Thread: [JVM-B] darcs patch: Export createJavaVM, allowing us to wrap the VM in the...
Status: Beta
Brought to you by:
ashley-y
From: ArtemGr <ar...@bi...> - 2006-12-22 19:55:36
|
Fri Dec 22 22:46:10 MSK 2006 ArtemGr <ar...@bi...> * Export createJavaVM, allowing us to wrap the VM in the IO monad as well= . Typically the lifespan of the VM is limited by the JVMUser monad, because the only way to invoke any VM actions is thru the runWithClasspat= h function, which wraps the computation into the JVMUser monad. But this limitation is artificial, IMHO, because the VM resides in the IO monad and the JVMUser state can be sufficiently passed around by the IO monad. |
From: Artem Gr <ar...@bi...> - 2006-12-22 20:26:35
Attachments:
smime.p7s
|
Well, what i've said is not very clear. To clarify: JVM is essentially an external state, like IO, and us such it can be, of course, handled by IO. But JVMUser state, which might contain some preloaded methods, is not external, and passing it via IO, i suppose, does not gives the proper monadic guarantee that the old state of the JVMUser monad is never reused. But from my (scarce) experience with the JVM-Bridge code, i think that this guarantee is not required anywere. ArtemGr write: > Fri Dec 22 22:46:10 MSK 2006 ArtemGr <ar...@bi...> > * Export createJavaVM, allowing us to wrap the VM in the IO monad as well. > Typically the lifespan of the VM is limited by the JVMUser monad, > because the only way to invoke any VM actions is thru the runWithClasspath > function, which wraps the computation into the JVMUser monad. But this > limitation is artificial, IMHO, because the VM resides in the IO monad > and the JVMUser state can be sufficiently passed around by the IO monad. |