
On Wed, May 25, 2016 at 8:21 PM, Erik Dominikus
@Victor
Interesting idea. Yes, in principle we could implement a JVM where all java.lang.Thread instances are green threads, and all IO operations are nonblocking, just like GHC runtime, and this will allow Java programmers to write code in the easiest way (just new Thread() everywhere) without performance penalty.
Exactly. I don't know if it is really feasible, though. There is already Quasar[1] project for Java, but it has it's limits since it work by bytecode preprocessing. Streaght forward JVM with green threads should be cool. [1] http://www.paralleluniverse.co/quasar/ -- Victor Nazarov
On Wed, May 25, 2016 at 3:25 PM, Victor Nazarov
wrote: On Tue, May 24, 2016 at 8:43 PM, Erik Dominikus < erik.dominikus71@gmail.com> wrote:
(Please keep expectations low for now; this is just a weekend project.)
I have written, in Haskell, something that aspires to be a Java Virtual Machine (but I don't call it a JVM yet as it doesn't fully comply with the spec). The code is available here:
This is similar to Frege [3], but while Frege aims to run a variant of Haskell on Java, this project tries the other direction: running a subset of Java on Haskell.
I think it can be really interesting for Java community if you implement Java-runtime directly the same way GHC-runtime is implemented, i.e. Java-threads as GHC's IO-threads (i. e. green threads) and Java-I/O as GHC's input-output (which is asynchronous internally to support green-threading model).
-- Victor Nazarov
Some related stuffs:
[1] https://github.com/MateVM/MateVM [2] https://hackage.haskell.org/package/hs-java [3] https://github.com/Frege/frege [4]
https://wiki.haskell.org/GHC:FAQ#Why_isn.27t_GHC_available_for_.NET_or_on_th...
[5] https://github.com/levans/Open-Quark _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe