Do languages โ€‹โ€‹other than Erlang have the ability to send code to run instances?

I just found out that Erlang can remotely load code and modules into all instances of the cluster using the "nl" command. Can other languages โ€‹โ€‹do this?

+6
erlang hotswap
source share
4 answers

Technically, any of the lisp dialects could do this. Because "code is data" in lisp, passing some code to another field, and "eval'-ing" will do the job. SLIME does this to some extent through a remote replica using sockets.

+3
source share

You can write ClassLoader in java similar to codeloader in erlang. Java ClassLoaders have a lot of isolation, so it can be a little more complicated (but you could do something nice with it if you take advantage of it, instead of thinking of it as an enemy).

ClassLoaders are easy to write, but java does not come with one that does the same thing that erlang does. Java also does not have erlang clustering tools, so this is not particularly surprising.

+3
source share

In theory, purely functional languages โ€‹โ€‹should be able to do this, but until now I only heard about Erlang.

+2
source share

Not that I know, but it can be implemented in dynamic languages โ€‹โ€‹like Python, Perl or Lisp.

+1
source share

All Articles