#2087 Virtual machines / runtimes support

tcolar Wed 23 Jan 2013

In my mind Java as always been a little bit too much of a pain to install (for a user).

Whether it's been on Windows, OSX or Linux it's been rough at times, mostly because of licensing issues.

But it seem since Oracle took over it's getting even worst and fast. Apparently the latest windows version even comes with crapware.

You have to jump through hoops to install it on Linux because of licensing. And on OSX it' not prepackaged any longer.

And now their is also the whole "homeland security says to uninstall java" thing, which is mostly ridiculous, but nevertheless giving a "bad" label to Java for many users.

It's a fact some people avoid a software when they see "requires" java, in good part because of said installation pain.

I find the whole thing sad, because in the end, the JVM is still an amazing piece of software.

So while it's not going anywhere fast I was wondering about alternatives.

I would have though Brian and Andy would have wrote their own VM by now, what are you guys waiting for ;)

Joking apart I was wondering what other VMs Fantom could run on:

  • LLVM / Parrot ? I know some looked into that i the past, seems like a lot of work
  • Avian : KevinKelley mentionned that in the past, that seems like an interesting option.
  • V8 / Node : Not sure if it is a great "VM" but since Fantom already can compile to Javascript, maybe this actually makes sense but I'm not sure whether V8 can "handle" Fantom (single process / threads ? )
  • Lua, python VMs and a bunch others .....

Anyway just thinking aloud, the JVM is great but sometimes I wish Fantom could run on some very lightweight, very easy to install, open source VM.

Thoughts ?

katox Fri 8 Feb 2013

From what you mentioned node.js seems like a path with least obstacles. LLVM is a beast (though some work's been done there, see older posts), Parrot is vaporware and there is little motivation to port it to Python/Ruby/etc. specific VMs.

There's been done a lot for Clojurescript which has the very same problem so it would make sense to look around there and get inspired ;)

andy Fri 8 Feb 2013

Sort of a two-sided coin. For server stuff - don't see Java going anywhere anytime soon. The JVM is a very mature and optimized platform (licensing issues aside).

Client-side is a whole nother story... Java was never great here - and its not getting any better based on my very passive observance (please correct me if I'm wrong?). It would be great to write Fantom code on the client - but it will always be a second-class citizen to the native platform toolkit. So that's where something like a LLVM target would be awesome - and API bindings into the native toolkit libraries.

Login or Signup to reply.