lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On 15.11.2011 01:05, Stefan Reich wrote:

"Mobility", here, is defined as the ability of any program to move to
another computer at any time while preserving its full inner state
(code+data+threads). (Outside connections, naturally, may have to be
recreated after moving.)

You might be interested in systems that do this at the OS level too.
For instance Kerrighed: see http://kerrighed.org/man/migrate.1.html
and http://kerrighed.org/man/checkpoint.1.html.

Obviously another way to do such a thing is to migrate the whole
virtual machine with something like Xen.

So it seems that Lua, with the advent of Mobile Lua, is now the only
popular language offering full code mobility.

As said by other people I feel like you forget Smalltalk.

Question is: Are people aware of the advantages of code mobility? Are
you aware? If not, what would it need for you to understand these
advantages?

I do understand the advantages of such mobility, especially in the
context of high availability and large scale distributed applications.

Another use case (I don't think I've seen something like that yet)
would be: I'm running a program on my desktop computer, I have to go
somewhere, I migrate it to my laptop and just take my computation
with me.

I don't think mobility is very useful without the ability to snapshot
a process (ie. pause and persist to disk) though, and once you have
that mobility is rather easy to obtain.

It's not exactly the same thing but you might also be interested in
the concept of "reincarnation" of Minix3:
http://www.linuxpromagazine.com/Online/News/Video-Andrew-Tanenbaum-on-Bugs-and-Minix-Reincarnation-Server

--
Pierre Chapuis