|HOC:||A Haskell to Objective-C Binding|
HOC Has Moved
HOC has moved to Google Code. The pages at sourceforge are outdated, and so is the source code available from here.
HOC is a Haskell to Objective-C binding. In a nutshell, it enables you to use Objective-C objects and frameworks from Haskell, and also enables you to write Objective-C objects in Haskell.
The Haskell interfaces produced by HOC are:
- Typed: Take advantage of Haskell's sound type inference to help you develop robust, correct Cocoa/GNUstep applications on your first compile.
- Automatically Generated: HOC comes with an interface generator to generate Haskell bindings to Objective-C's objects; use it even with your own custom Objective-C frameworks!
- Haskell-Friendly: We make heavy use of key Haskell features such as type classes and partial application, to ensure that the HOC API is as 'Haskell-like' as possible.
You can write full-blown applications in HOC and use all of the Foundation, AppKit and Cocoa frameworks' classes (including all of the AppKit's GUI objects), combining Objective-C tools such as Mac OS X's advanced Interface Builder to build the GUI graphically while writing controllers for the GUI in Haskell. You can even mix and match custom objects written in Objective-C with objects written in Haskell, depending on which language you find more suitable for the task.
In the spirit of the Haskell and Mac OS X open-source communities, HOC is provided under the liberal BSD license.