Tuesday, 8 November 2011

Jane St's Async library

The good folks at Jane St Capital have kindly released another of their OCaml libraries as open source software. This is the Async library and it is an alternative to the traditional LWT library for asynchronous programming (including IO) in OCaml.


Sunday, 10 July 2011

James Woodyatt's Oni library (including lots of data structures)

James Woodyatt has published his Oni library of miscellaneous OCaml goodness that includes lots of interesting data structures.

Highlighted features include:

- Functional streams and stream processors (extended).
- Functional bootstrapped skew-binomial heap.
- Functional red-black binary tree (associative array).
- Functional sets based on red-black binary tree.
- Functional real-time catenable deque.
- Functional LL(x) parsing using state-exception monad.
- Functional lazy deterministic finite automaton (DFA).
- Functional lexical analyzer (using lazy DFA and monadic parser).
- Functional substring list manipulation (message buffer chains).
- Gregorian calendar date manipulation.
- Standard time manipulation.
- System time in Temps Atomique International (TAI).
- Unicode transcoding.
- Universal resource identifier (URI) manipulation.
- Extended socket interface (supports more options, and UDP w/multicast).
- I/O event multiplexing (with Unix.select).
- Functional XML stream parsing and generation - Functional MIME stream parsing and generation

Saturday, 5 March 2011

More OCaml jobs than ever before

The IT Jobs Watch website shows that the number of job advertisements citing OCaml is at its highest level ever:


Sunday, 21 November 2010

OCaml on the iPad

The OCaml Example app in the iPad store lets you write and run OCaml programs on your iPad:

Friday, 6 August 2010

Data structures: Heaps

The OCaml Journal just published an article about data structures:

"A min-heap is a tree-based data structure that satisfies the constraint that the children at any given branch are always larger than their parent and, consequently, the minimum element is at the root. Heaps are most notable as an efficient way to implement priority queues which, in turn, underpin a variety of algorithms including some seen in previous OCaml Journal articles. This article examines skew heaps, leftist heaps, pairing heaps and binomial heaps. Higher-order modules are used to create reusable implementations..."

To read this article and more, subscribe to The OCaml Journal today!

Monday, 2 August 2010

OCaml 3.12 released!

A new version of the OCaml distribution was released today, OCaml 3.12.0. This release includes many exciting developments to the language as well as a multitude of other improvements:

  • Improved record patterns.
  • Explicit method override.
  • Local open.
  • Direct polymorphic recursion via type annotations.
  • First-class modules.
  • Named types as parameters to functions.

Friday, 30 July 2010

Rigid body dynamics

The OCaml Journal just published an article about game physics:

"A common technique to simulate the dynamics of objects is to model them as interacting rigid components. This article describes the design and implementation of a simple OCaml program that uses rigid body dynamics to simulate balls bouncing around in 2D, using OpenGL for 2D visualization..."

To read this article and more, subscribe to The OCaml Journal today!