[Haskell-cafe] Talking to Java from Haskell?

aditya siram aditya.siram at gmail.com
Tue Jul 20 09:45:28 EDT 2010


Besides the FFI option, I know that Haskell has pretty good Lua
bindings [1]  and Lua has pretty good Java bindings [2] so perhaps the
law of transitivity can work for you!
-deech

[1] http://hackage.haskell.org/package/hslua-0.2
[2] http://www.keplerproject.org/luajava/manual.html

On Mon, Jul 19, 2010 at 10:09 PM, Max Cantor <mxcantor at gmail.com> wrote:
> I use Apache Thrift, as someone else mentioned for IPC with some java code that connects to a third party data vendor.  As of version 0.2, there are some bugs that you need to be aware of.
>
> However, and possibly more of interest to you, I have already written a FIX implementation in pure haskell.  Its not exactly shippable code but it works fine for me.  Its not as full featured as quick fix but its fine for single orders.
>
> Since you seem to be in a similar line of work to me (using haskell for finance/trading) perhaps we shoudl have a chat.  Get me on gtalk at this address.
>
> Max
>
> On Jul 9, 2010, at 8:11 PM, Daniel Cook wrote:
>
>>> A simpler solution might be Facebook's thrift [1]
>>
>> This is a very interesting solution.  I'll investigate Thrift further,
>> but it may wind up being what I do.  Does anyone know how solid this
>> code is in Haskell?
>>
>>> the Java binary directly from Haskell using System.Process and friends, and
>>> rather than communicating over ports, communicate over pipes.
>>
>> Cool!    This is probably a second step, though - first get the code
>> working, then worry about
>> making it all fast.
>>
>>
>> On Fri, Jul 9, 2010 at 5:11 AM, sterl <s.clover at gmail.com> wrote:
>>> Daniel Cook wrote:
>>>>
>>>> b) Wrap the Java library with some code to use a lightweight message
>>>> queue (zeromq) to send messages to my Haskell program?  (This would
>>>> require essentially re-implementing an abstracted subset of the the
>>>> protocol into 0MQ messages)
>>>
>>> A simpler solution might be Facebook's thrift [1] (now an Apache project).
>>> You write a simple file in a C-inspired IDL which gives typedefs and RPC
>>> signatures, and not only do you get the data structures and serialization
>>> functions in a number of target languages including Haskell and Java, but
>>> you get lightweight, relatively robust, server and client implementations.
>>> The implementations of the Java functions can then be written in Scala or
>>> Clojure, so you avoid having to leave fp-land entirely. One could even run
>>> the Java binary directly from Haskell using System.Process and friends, and
>>> rather than communicating over ports, communicate over pipes. In any case,
>>> I've had good luck with this approach.
>>>
>>> Cheers,
>>> Sterl.
>>>
>>> [1] http://incubator.apache.org/thrift/
>>>
>> _______________________________________________
>> Haskell-Cafe mailing list
>> Haskell-Cafe at haskell.org
>> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>


More information about the Haskell-Cafe mailing list