Thank you very much to everyone who responded on java integration. I have a lot of work to do before I can conclude, but I will give a quick summary just in case there is some general interest.
The most common approach appears to be a network interface between separate java and haskell processes. Both JSON and thrift appear to tools to help doing that. That sounds like a good idea if effort is taken properly to plan out the system architecture. In my case, it would probably lead me to write more code in haskell than I had originally planned (for good or for bad). One poster pointed to neurocyte's library of JNI bindings. That's definately something I will look into. At first sight, it looks much easier to get into than I had feared. The most popular proposal was, nevertheless, to use other languages, in particular hybrid languages like scala. In my opinion, that only solves a minor part of the problem. In my opinion, the chief virtue of a pure language like haskell is its simplicity. Yet, I must admit, that option was always on my list. Familiar with python, jython is a serious option, although I would prefer strong and static type checking. Thanks again, everyone :-- George On Thu, May 09, 2013 at 11:48:09AM -0700, Dominic Espinosa wrote: > Hello, > > I've had some success with the Thrift library (http://thrift.apache.org/). > See this blog post > (http://mortenib.wordpress.com/2009/10/29/thrift-and-haskell/) for a basic > tutorial on getting started. My project was interfacing a haskell library > of machine learning algorithms (which I wrote) with a large Java > application I was familiar with but didn't write. So this may be what > you're looking for. > > Thrift interfaces language X with language Y with a sort of RPC paradigm: > you specify the names and types of the possible calls and returns, and > Thrift uses this file to generate serialization and transport code for > whatever languages you name. You then add this code to the project on each > side and things pretty much just work. > > On Thu, May 09, 2013 at 04:04:19PM +0100, Hans Georg Schaathun wrote: > > Hi all, > > > > I am rather new to the café, so I just hope my question fits in. > > > > Does anyone have experience with integrating Haskell and Java? > > I have done some searching, finding a lot of pointers but hardly > > anything in terms of evaluation, successes, or caveats. > > > > From what I see Frege looks promising, arguably not haskell I suppose, > > but does it work? Other projects I have seen appear to have reached > > a stand-still for ages. > > > > The background for the question is that I will contribute some control > > algorithms based on machine learning or AI in a larger project. It > > would save me a lot of time if I could write in Haskell, but only > > assuming that interfacing with Java afterwards is trivial compared > > to writing everything in java in the first place. I am, perhaps, > > particularly worried that a Haskell-lookalike for JVM might be > > unable to optimise properly, like not being lazy. Any advice? > > > > TIA > > -- > > :-- Hans Georg > > > > _______________________________________________ > > Haskell-Cafe mailing list > > Haskell-Cafe@haskell.org > > http://www.haskell.org/mailman/listinfo/haskell-cafe -- :-- Hans Georg _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe