Thursday, 25 September 2008

Concurrent web crawling

The OCaml Journal just published an article about concurrent web programming:

"Web-enabled technology is now ubiquitous and of huge commercial value. These kinds of programs share two common characteristics: they send information over the internet and they perform tasks concurrently. This article is the first in a series to examine the use of the OCaml programming language and its relatives in the growing area of concurrent web programming..."

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

Friday, 12 September 2008

Building a 2D vector graphics library

The OCaml Journal just published an article about vector graphics:

"Vector graphics represent images in terms of lines and curves on a fictional canvas. This resolution-independent representation is ideal for high resolution output devices such as printers but the inevitable march of technology has ossified vector graphics on the desktop as a fundamental component of both Apple's and Microsoft's latest operating systems. This article describes the design and implementation of a simple library for 2D vector graphics written in OCaml and using OpenGL for visualization..."

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

Wednesday, 10 September 2008

LLVM tutorials ported to OCaml

Erick Tryzelaar has done a fantastic job translating the LLVM tutorials from C++ to OCaml. The fruits of his labor are available here.

This tutorial describes the implementation of a compiler for the "Kaleidoscope" language including lexing, parsing, basic code generation using LLVM, JIT compilation using LLVM and the introduction of control flow and mutable variables.

LLVM is one of the world's most exciting open source projects and the early development of comprehensive OCaml bindings to LLVM has fuelled a great deal of cross-pollination.

Monday, 8 September 2008

Year long subscriptions to the OCaml Journal!

Due to popular demand we have introduced year-long subscriptions to The OCaml Journal. Subscribers taking out 1 year subscriptions to both The OCaml Journal and The F#.NET Journal at the same time can currently benefit from a 25% discount!

Friday, 5 September 2008

OCaml on eight cores

In preparation for OCaml's forthcoming parallel garbage collector, Flying Frog Consultancy have invested in an eight core computer. The machine is a Dell PowerEdge T605 with eight AMD Opteron cores and 4Gb of RAM.

Unable to resist temptation, we immediately reran the parallel ray tracer from the OCaml Journal article Fork-based parallelism and obtained near-optimal speedup when using all eight cores:

Watch this space for more parallel benchmarks using OCaml!

Writing a bytecode compiler using LLVM

The OCaml Journal just published an article about the compilation of bytecodes:

"The Low-Level Virtual Machine (LLVM) provides the machinery to generate high-performance native code programmatically and on-demand. One of the most important applications of this technology is the Just In Time (JIT) compilation of bytecode intermediate representations into native code as found in Sun's Java Virtual Machine (JVM) and Microsoft's Common Language Runtime (CLR). This article describes how a simple bytecode interpreter can be developed into a JIT compiler using LLVM with relatively little effort..."

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