Hello
Here is the latest Caml Weekly News, for the week of September 20 to 27, 2011.
Archive: https://sympa-roc.inria.fr/wws/arc/caml-list/2011-09/msg00170.html
Vincent Balat announced:We are very happy to announce the release of the version 2.0 of the Ocsigen framework. After more than 6 years of development, we achieved our goal to provide a complete framework to program Web sites and client/server Web applications fully in OCaml. More information and download from http://ocsigen.org Main features: - Powerful mechanisms to implement traditional Web interaction very easily (links, forms, bookmarks, back button ...). - A compiler from OCaml to Javascript to write the client side parts of your programs in OCaml. - Integrated client/server programming in one single program, with automatic communication between server and client. - Validation of HTML at compile time. - Powerful session mechanism - Persistant client side programs: you can mix client side features with traditional Web interaction. The program does not stop when you press a link! The documentation is now mostly complete. We are currently working on adding the few missing parts and proof reading everything. Current version is available online and a more polished version will be released as a PDF book in a few weeks. The good starting point for learning Ocsigen is the tutorial: http://ocsigen.org/tutorial/ Please report any problem with current version or in documentation through the bug tracking system, the mailing list or the IRC channel. The Ocsigen framework combines many software projects (all open source), that can be used independently: - Ocsigen server: an extensible Web server - Eliom: a framework for Web programming in OCaml - Js_of_ocaml: a compiler from OCaml bytecode to Javascript - Lwt: a cooperative threading library - Macaque: a library for type safe database queries - O'Closure: a binding for the Google closure widget library - etc. The full list of our projects is available here: http://ocsigen.org/projects Ocsigen is a research project of the PPS laboratory (CNRS, université Paris-Diderot) (http://www.pps.jussieu.fr), hosted at IRILL (http://www.irill.org). It receives funding from the ANR (PWD project) (http://www.agence-nationale-recherche.fr). We hope that you'll enjoy this version!
Archive: https://sympa-roc.inria.fr/wws/arc/caml-list/2011-09/msg00174.html
Kakadu announced:I'm working on Qt bindings for OCaml. You can browse my code at https://github.com/Kakadu/lablqt Now qtjambi parses Qt's header files and generates an XML representation of API. Then binding generator generates OCaml and C++ code of bindings. Now a big part of Qt's API is stored in aaa.xml, so you don't need to install qtjambi's generator. Big part of QtCore É QtGui is incapsulated in this xml file. You can use build.ml script to compile lablqt. Btw, lablqt depends on janestreet's core_extended library. You can see test examples in test_gen/test* directories. For examle: https://github.com/Kakadu/lablqt/blob/master/test_gen/test5/main.ml I've implemented almost type-safe connections from signals to slots. Also I've created tool (https://github.com/Kakadu/lablqt/tree/master/moc) to simplify creating of user-defined slots: you can connect them like here (https://github.com/Kakadu/lablqt/blob/master/test_gen/test4/main.ml#L27) and write your code separately (https://github.com/Kakadu/lablqt/blob/master/test_gen/test4/UserSlots.ml#L2). Lablqt is compilable only on a few number of machines, so I'll be glad if you test it on your computer. It's difficult to me to decide in what direction Qt bindings should be developed. I you have any ideas or recommendations, I'll be glad to read them.
Archive: https://sympa-roc.inria.fr/wws/arc/caml-list/2011-09/msg00186.html
Mike McClurg announced:I just wanted to let everyone know that Citrix is hiring developers to work on the OCaml-based XenAPI toolstack. We are looking to recruit top-class engineers to work on the toolstack; applicants must have a good knowledge of data structures and algorithms, experience of programming in the context of large systems and general aesthetic good taste when it comes to code and architecture. Our code base is significant and varied: over 130,000 lines of OCaml, solving problems ranging from the low-level (Xen hypercalls) to the high-level (resource pool management), to the compiler-driven (generating language bindings for our Xen datamodel). Our ideal candidate will have: * significant experience with applications programming in high-level functional languages (such as OCaml) * an aptitude for implementing (and reasoning about) complex concurrent and distributed systems * the skills required to contribute to both the architectural design and day-to-day development of a large code-base * strong communication skills and problem solving ability * a determination to deliver clean and reliable solutions that meet our customers' needs So if you want to tackle interesting and challenging programming problems and contribute to an innovative, fast-growing product that is already used by tens of thousands of customers across the world, please don't hesitate to send me your CV. Thanks, Mike McClurg PS: Please note that you must have UK right to work. Here are the official job postings, but if you apply please send me your CV directly. * Req #11673 - Software Development Engineer: http://careers.peopleclick.com/careerscp/client_citrix/emea_region/jobDetails.do?functionName=getJobDetail&jobPostId=32491&localeCode=en-us * Req #11897 - Senior Software Developer: http://careers.peopleclick.com/careerscp/client_citrix/emea_region/jobDetails.do?functionName=getJobDetail&jobPostId=33053&localeCode=en-us And here are some links to our company, products and open source projects and code. * The Xen Hypervisor - http://xen.org/ * Citrix XenServer - http://www.citrix.com/English/ps2/products/product.asp?contentID=683148 * Our GitHub account - https://github.com/xen-org
Thanks to Alp Mestan, we now include in the Caml Weekly News the links to the recent posts from the ocamlcore planet blog at http://planet.ocamlcore.org/. Yield, Continue: http://alaska-kamtchatka.blogspot.com/2011/09/yield-continue.html Tuareg mode is available through marmalade: https://forge.ocamlcore.org/forum/forum.php?forum_id=808 Ocsigen 2.0: http://caml.inria.fr/cgi-bin/hump.cgi?contrib=554 Calcul avec OCaml: http://caml.inria.fr/cgi-bin/hump.cgi?contrib=790 Which foreign function interface is the best?: http://rwmj.wordpress.com/2011/09/21/which-foreign-function-interface-is-the-best/ Ocsigen 2.0 released!: http://ocsigen.org/ A Small Patch for Bizarre but User Controllable Limited Overloading: http://camlspotter.blogspot.com/2011/09/small-patch-for-bizarre-but-user.html sqlite3: https://forge.ocamlcore.org/projects/sqlite3/ res: https://forge.ocamlcore.org/projects/res/ First release: https://forge.ocamlcore.org/forum/forum.php?forum_id=807
If you happen to miss a CWN, you can send me a message and I'll mail it to you, or go take a look at the archive or the RSS feed of the archives.
If you also wish to receive it every week by mail, you may subscribe online.