|
|
Subscribe / Log in / New account

An embedded polygot VM in Emacs is probably the answer.

An embedded polygot VM in Emacs is probably the answer.

Posted Oct 10, 2014 16:24 UTC (Fri) by bkuhn (subscriber, #58642)
Parent article: The future of Emacs, Guile, and Emacs Lisp

Once upon a time, I did some work to investigate putting Parrot into Emacs, and then writing an Elisp implementation of Parrot. I had some promising early results, but the complaints about Guile community being "too small" to handle the load of Emacs' needs probably applies to Parrot as well.

I've admittedly never been fully convinced at RMS' claim that we could compile all other languages down to Guile. I have a master's degree specifically focusing on multi-lingual VMs, and I'm somewhat convinced this is all much harder than it looks. (Admittedly, my expertise on this is now antiquated by years of focusing on licensing and politics instead. ;)

FWIW, if I were going to approach this problem anew, I'd be interested froma technical perspective if it's possible to embed Vert.x in Emacs and write an Elisp implementation for Vert.x. Sadly, it seems that Vert.x has switched to a GPL-incompatible license, so I guess this is a non-starter for licensing reasons. I don't get why they abandoned the Apache license.


to post comments

An embedded polygot VM in Emacs is probably the answer.

Posted Oct 12, 2014 6:16 UTC (Sun) by k8to (guest, #15413) [Link] (1 responses)

Isn't the more interesting question whether you can run all languages reasonably in a particular VM?

Somehow I assume any compute model can be represented in almost any VM, though it may require a certain level of ridiculousness to make it go. Maybe I'm wrong in my assumption?

An embedded polygot VM in Emacs is probably the answer.

Posted Oct 13, 2014 18:03 UTC (Mon) by bkuhn (subscriber, #58642) [Link]

I think your question is stated correctly, with emphasis on "reasonably".

That's the tough part: most JVM ports are simply reimplementations of an interpreter in Java, or at the very least, a very heavy-weight runtime library for the language in Java.

Similarly, you're going to face that with Guile. However, if Guile's own VM has gotten versatile now, that might work well.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds