From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id 994F3BC37 for ; Fri, 16 Oct 2009 00:10:39 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ApoEAJc610peFxRU/2dsb2JhbADZFIQwBA X-IronPort-AV: E=Sophos;i="4.44,568,1249250400"; d="asc'?scan'208";a="48700619" Received: from glyptal.glondu.net ([94.23.20.84]) by mail4-smtp-sop.national.inria.fr with ESMTP; 16 Oct 2009 00:10:38 +0200 Received: from [10.198.42.2] (unknown [10.198.42.2]) by glyptal.glondu.net (Postfix) with ESMTP id 4A4F759F1F; Fri, 16 Oct 2009 00:10:32 +0200 (CEST) Message-ID: <4AD79DD5.5090109@glondu.net> Date: Fri, 16 Oct 2009 00:10:29 +0200 From: =?UTF-8?B?U3TDqXBoYW5lIEdsb25kdQ==?= User-Agent: Mozilla-Thunderbird 2.0.0.22 (X11/20090701) MIME-Version: 1.0 To: ocsigen@sympa.mancoosi.univ-paris-diderot.fr, caml-list Subject: [ANN] Lwt 2.0.0 released References: <4AC682F0.9050808@glondu.net> In-Reply-To: <4AC682F0.9050808@glondu.net> X-Enigmail-Version: 0.95.0 OpenPGP: id=49881AD3 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="------------enig95C081816844E10F5971E864" X-Spam: no; 0.00; gtk:01 readline:01 syntax:01 toplevel:01 buffered:01 abstracting:01 mutable:01 syntax:01 ocaml:01 toplevel:01 stubs:01 reimplement:01 non-blocking:01 bugfix:01 findlib:01 X-Attachments: cset="UTF-8" type="application/pgp-signature" name="signature.asc" name="signature.asc" This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig95C081816844E10F5971E864 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hello, The Lwt team is pleased to announce the release of Lwt 2.0.0. You can download it at: https://ocsigen.org/lwt/install This new version brings a lot of new features, including: * GLib integration: it is now possible to write cooperative application using GTK! * Terminal utilities: you can now write cooperative curses oriented application! * Cooperative readline: write a shell in 5 minutes! * A syntax extension to make code using lwt clearer * A proof of concept implementation of a new toplevel with line editing and completion support * New modules, helpers, ... Here is the complete list of changes from the previous version (1.1.0): * Adding modules: - Lwt_stream: lwt-aware version of the Stream module - Lwt_gc for using finalise without Lwt_unix.run - Lwt_io: a new implementation of buffered channels with more features and better handling of concurrent access - Lwt_text: implementation of text channels - Lwt_process: helpers to spawn processes and communicate with them - Lwt_main for abstracting the main loop and allowing replacement by a custom main loop - Lwt_glib for integration into the glib main event loop - Lwt_term for interaction with the terminal - Lwt_read_line for interactive user input - Lwt_monitor, Lwt_mvar: combined locks for synchronization with conditional variables for notification - Lwt_throttle for limiting rate of execution (e.g. for authentication procedures) - Lwt_sequence: mutable sequence of elements - Lwt_event, Lwt_signal: helpers for reactive programming with lwt * Adding a syntax extension pa_lwt: - handles anonymous bind a >> b - adds syntactic sugar for catching errors (ticket #6) - adds syntactic sugar for parallel let-binding construction - adds syntactic sugar for for-like loops * Top-level integration: - threads can runs while reading user input - line editing support * New enhanced OCaml toplevel with some basic completion features * Adding C stubs to reimplement Unix.read and Unix.write with assumption of non-blocking behaviour * Adding more functions/helpers in Lwt * Fixing memory leaks in Lwt.choose * Bugfix in Lwt_chan.close_* (ticket #66) * Separate the type of threads (covariant) from the type of thread wakeners (contravariant); the type of many functions related to Lwt.wait has been changed * Add cancelable threads * Unix-dependent part is now put in its own archive and findlib package. Enjoy! --=20 The Lwt team --------------enig95C081816844E10F5971E864 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iQIcBAEBCgAGBQJK153YAAoJEHhT2k1JiBrT244P/jjSqpXeQEsSMgtc9LxJADsk SUrrNnxvsgz30g5Zbot/VDCo677DFy/4brBhOn6kdxvnx7bMWU3OzSxBBaE7lyyE jXyMl4vudR5A+EI9dFUCMs2lgKu84lGMAZn3zBzyUY7f+JBlKNeJQg3ehGVpBQXR 1aRWexUxHC/fhOchxdn0aKtD3ibi49HU8pSNqgPbbtNzFd9OLclS8nstLOydt8eC CrCh6Rwu1xzaarsorysDiiYpzHNDGm2OokXZndwwN9D7YrzI4yAyiZ1TE5Woh02b nGtIntnVo6m3yYx9sl6ElPM7pi39y5xDSedD3Mvl2xNyBXWNsLog8+5xh9gX5StJ rftkwVbkmwKoFjHDdcrS5O9MtVpUz3691JKQ4z/q8uyXiqPsk5S2kFQs+k7IQYVL XH9mUS70st3cKbVMh6G88lBE4vR1ygzIM0SnRoeN3r24He/ToptUjoSvC0GNTIKv FqO+w19t7yo/RRqS3w5bl/Ivup9QfSC3dWcmVFSrmhH4t3TshvzWRzVkMGPOfEA1 G3Ruevq3yR6iOwu/ziijmEOxb+GaEGM4Y1LtO+i3lEmYdHXu6h01tppfAfk40dAZ 7sLbKF4GRob6LiBRwyADxyL56ghzhI1+/P4I7FYZlt3FtzVQA7z0exxSLdcf/yHa 2DsBm6NzcuCSTWPHGzP7 =CYE2 -----END PGP SIGNATURE----- --------------enig95C081816844E10F5971E864--