1. 11

  2. 2

    I have been trying to investigate another angle (but from similar point of view: an all-encompassing run-time environment).

    I would like to know if emacs can be used like Java or Rocket to create back-end services. For example, can I write a backend REST server, package into something like a ‘.el’ package, upload that with Ansible onto a VM that has Emacs 27 or 28 installed. And run a full-featured HTTP2 rest point with gzip, certificates, and all the other features needed for open-internet backend server.

    Then, can ‘link’ multiple instances of Emacs VMs (possible across multiple VMs) to run, say, a distributed cache server (so I will need a naming service (for discovery), a locking service (to lock a value, such that a lock is visible across all the instances), etc)

    1. 2

      Elnode is the current conventional thing to use for serving http requests from inside an Emacs instance. I believe that at the moment it doesn’t do gzip, TLS, etc and that at the moment the best thing to do would be to use a reverse proxy (I think caddy is easiest to set up) to add that stuff.

      1. 1

        Thank you. Yes I think I came across Elnode, but since it has not be updated for about 8 years, I figured it will not support newer security features and protocols. I was also thinking that I might be looking for something, that others had thought about – but decided it was not worth doing in Emacs :-)


        Genuine question: why? What does that get you that using racket or scheme or some other lisp doesn’t? Every time I’ve tried using emacs’s built-in support for things like networking I want to scream. Not to mention all the global mutable state all over the place.

      Stories with similar links:

      1. The Emacs Operating System via bsima 4 years ago | 16 points | 9 comments