[Haskell-cafe] State of play with Haskell-Cocoa (Objective-C) bindings?

Luke Evans luke at eversosoft.com
Sun Jul 31 21:55:36 CEST 2011


I'm planning to start an Objective-C/Cocoa project and would like to write it in Haskell as much as possible.

Of course, I can contrive to split the project into app logic (Haskell) and UI (Objective-C) with some sort of minimal interface between them; possibly just plain old C FFI.

However, I would like an interface that's as 'automatic' as possible - one that preferably means that I don't have to spend a lot of time maintaining a somewhat heavy-weight special interface layer as I grow my code on both sides of the divide.
Preferably the suture line is as far over on the Objective-C side as possible, so that I can write pretty much everything in Haskell.

Now, I see a couple of references to some options:
- HOC seems very close to what I'm looking for, but the project looks pretty 'dormant'.
- I see some mention of an Objective-C FFI, but am uncertain if this is in any current build of GHC.

Are there any other options up anyone's sleeves?  Anybody working on something interesting I could play with?

Until recently, I was concerned about being able to use GC on the Objective-C side, but with Apple's new ARC memory management model, that's no longer an issue. 
Most Haskell-ObjC bindings that already exist are surely designed for Retain-Release, which I assume is not disrupted by ARC as this is just RR at runtime.

-- Luke




More information about the Haskell-Cafe mailing list