BLOG ON CAMLCITY.ORG
A scalable implementation of matrix multiplications in O'Caml
O'Caml seems not be recognized as a programming language where it is easy to parallelize tasks. Recently, there was a heated discussion on caml-list about this subject, and people complained that the memory management of O'Caml does not work well for multi-threaded programs. Actually, the memory manager enforces that only ... (read more)
The ranking algorithm behind GODI Search
The question has always been: Are the results better if a search engine really understands the text it indexes? You can view my latest project, GODI Search, as an attempt to answer this question for a very limited set of documents, namely the code and its documentation of GODI, the ... (read more)
The Story Behind Hydro
On the surface a search engine looks like a very simple web site, but actually most things happen in the backend, and are hidden from the user. A search engine consists of 10 to 20 different types of servers, and many of them are instantiated several times in a cluster ... (read more)
Using Polymorphic Variants
It is one of the coolest language constructs, but its conception leads sometimes to confusion. O'Caml allows it to form ad-hoc unions of tagged values, the so-called polymorphic variants. They are the free-style counterpart of the "normal" variant types. We want to shed some light on this construction in this ... (read more)