From anil@recoil.org Wed Mar 07 07:23:23 2012
Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S5BDX-0000QI-Ol (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Wed, 07 Mar 2012 07:23:23 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from recoil.dh.bytemark.co.uk ([89.16.177.154]:3104
	helo=dark.recoil.org)
	by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25)
	with smtp id 1S5BDX-0006wd-QD (Exim 4.72) for cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Wed, 07 Mar 2012 07:23:23 +0000
Received: (qmail 23712 invoked by uid 634); 7 Mar 2012 07:23:22 -0000
X-Spam-Level: *
X-Spam-Status: No, hits=-1.0 required=5.0
	tests=ALL_TRUSTED
X-Spam-Check-By: dark.recoil.org
Received: from cpc7-cmbg14-2-0-cust238.5-4.cable.virginmedia.com (HELO
	[192.168.1.33]) (86.30.244.239)
	(smtp-auth username remote@recoil.org, mechanism cram-md5)
	by dark.recoil.org (qpsmtpd/0.84) with ESMTPA;
	Wed, 07 Mar 2012 07:23:22 +0000
From: Anil Madhavapeddy <anil@recoil.org>
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: quoted-printable
Subject: Fwd: [Caml-list] ocamlopt -g
Date: Wed, 7 Mar 2012 07:23:21 +0000
References: <80A54E65-AFE1-4791-84AD-A83DE80ECC28@acm.org>
To: Mirage List <cl-mirage@lists.cam.ac.uk>
Message-Id: <5D3D3DA9-7CC3-42CB-B0DB-AF61EE6C3BF7@recoil.org>
Mime-Version: 1.0 (Apple Message framework v1251.1)
X-Mailer: Apple Mail (2.1251.1)
X-Virus-Checked: Checked by ClamAV on dark.recoil.org
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Wed, 07 Mar 2012 07:23:23 -0000
X-Keywords:                  
X-UID: 217
Status: O
Content-Length: 1268
Lines: 45

This is a really useful fix for us... Mirage can be compiled with and =
without
-g, but it's useful to have debug symbols around to profile hotspots =
(especially in
the lower-level drivers).

Begin forwarded message:

> From: Josh Berdine <jberdine@acm.org>
> Subject: Re: [Caml-list] ocamlopt -g
> Date: 7 March 2012 00:54:14 GMT
> To: Martin Jambon <martin.jambon@ens-lyon.org>
> Cc: OCaml Mailing List <caml-list@inria.fr>
>=20
> In some cases ocamlopt -g disabled some optimizations.  This now seems =
to be fixed in 3.13, see http://caml.inria.fr/mantis/view.php?id=3D5426 =
.
>=20
> Cheers,  Josh
>=20
>=20
>> Dear all,
>>=20
>> Is there is any disadvantage of using -g with ocamlopt?
>>=20
>> A number of libraries are not compiled with -g and this prevents us =
from
>> getting a complete stack backtrace when they raise an exception. Are
>> there technical reasons for that, other than "this is an old library =
and
>> we haven't touched the Makefile since ocamlopt offers -g"?
>>=20
>>=20
>> Martin
>=20
>=20
>=20
> --=20
> Caml-list mailing list.  Subscription management and archives:
> https://sympa-roc.inria.fr/wws/info/caml-list
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports: http://caml.inria.fr/bin/caml-bugs
>=20



From Richard.Mortier@nottingham.ac.uk Mon Mar 12 23:57:31 2012
Received: from ppsw-50.csi.cam.ac.uk ([131.111.8.150])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S7F7L-0005kK-US (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Mon, 12 Mar 2012 23:57:31 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from thb-mta-19-tx.emailfiltering.com ([194.116.199.150]:37818
	helo=thb-mta-19.emailfiltering.com)
	by ppsw-50.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25)
	with esmtp id 1S7F7G-00040A-q8 (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Mon, 12 Mar 2012 23:57:31 +0000
Received: from smtp1.nottingham.ac.uk ([128.243.44.4])
	by thb-mta-19.emailfiltering.com with emfmta (version 4.8.5.86) by TLS
	id 2341862782 ;58b1a007ca018531; Mon, 12 Mar 2012 23:16:44 +0000
Received: from uiwexhub01.ad.nottingham.ac.uk ([128.243.15.133])
	by smtp1.nottingham.ac.uk with esmtps (TLSv1:AES128-SHA:128)
	(Exim 4.77) (envelope-from <Richard.Mortier@nottingham.ac.uk>)
	id 1S7ETs-0005PE-8g
	for cl-mirage@lists.cam.ac.uk; Mon, 12 Mar 2012 23:16:44 +0000
Received: from EXCHANGE1.ad.nottingham.ac.uk ([fe80::7962:f868:e6ee:6267]) by
	UIWEXHUB01.ad.nottingham.ac.uk ([2002:80f3:f85::80f3:f85]) with mapi;
	Mon, 12 Mar 2012 23:16:40 +0000
From: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
To: "cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
Date: Mon, 12 Mar 2012 23:16:43 +0000
Subject: error handling
Thread-Topic: error handling
Thread-Index: Ac0Api4sfji3Pf/dRgC0YIFaEysCOA==
Message-ID: <E50EC41D-2F67-44AB-A633-B1F95FD14FB0@nottingham.ac.uk>
Accept-Language: en-US, en-GB
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
acceptlanguage: en-US, en-GB
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Mon, 12 Mar 2012 23:57:32 -0000
X-Keywords:                  
X-UID: 218
Status: O
Content-Length: 2477
Lines: 58

not the most exciting topic perhaps, but traditionally seems thorny.

i'm trying to fix up ocaml-dns to be both a bit more correct and a bit more=
 robust.

aiui, standard ocaml exceptions must not be allowed to propagate up to the =
point where they hit an Lwt thread, as that is Bad.

but there are a number of places in ocaml-dns -- and i expect that this wil=
l not be uncommon -- where functions raise exceptions indicating things lik=
e unparseable data (for whatever reason) has been received off the wire.

what i'd normally do here would be to cause current processing to cease, to=
 return the unparseable data that caused the error so it can be logged, and=
 continue from some suitable point.

my question is- what's the best way to do that under Lwt?

i've tried the following but have some questions:

1/ using raise_lwt instead of raise means that every function in question -=
- often these are subsidiary/helper functions  -- need to start returning '=
a Lwt.t; does propagating the Lwt-ness all the way through matter at all, o=
r do i just need to start doing lots of ">>" to chain things together, rath=
er than using ";"?

2/ making return types 'a option rather than 'a -- but this does not work t=
o return the unparseable bits

3/ logging the error (via Lwt_json_logger no less!) -- but this does not le=
t me indicate that processing should stop at the appropriate place

4/ leaving the standard "raise" exceptions in and trying to be careful to c=
atch them -- but this relies on me remembering all the entry points into th=
e library=20

currently i'm plumping for 4 but i wondered if the Gods of Ocaml had any be=
tter suggestions? :)

--=20
Cheers,

R.


=
This message and any attachment are intended solely for the addressee a=
nd may contain confidential information. If you have received this mess=
age in error, please send it back to me, and immediately delete it.   P=
lease do not use, copy or disclose the information contained in this me=
ssage or in any attachment.  Any views or opinions expressed by the aut=
hor of this email do not necessarily reflect the views of the Universit=
y of Nottingham.=0D=0A=0D=0AThis message has been checked for viruses b=
ut the contents of an attachment=0D=0Amay still contain software viruse=
s which could damage your computer system:=0D=0Ayou are advised to perf=
orm your own checks. Email communications with the=0D=0AUniversity of N=
ottingham may be monitored as permitted by UK legislation.=


From raphlalou@gmail.com Tue Mar 13 07:40:06 2012
Received: from ppsw-50.csi.cam.ac.uk ([131.111.8.150])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S7ML0-0004Fr-Ly (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <raphlalou@gmail.com>); Tue, 13 Mar 2012 07:40:06 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -2.7 from SpamAssassin-3.3.2-1293136 
	* -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/,
	low *      trust
	*      [209.85.210.179 listed in list.dnswl.dnsbl.ja.net]
	* 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail
	provider *       (raphlalou[at]gmail.com)
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
	* -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from
	*      author's domain
	*  0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily
	*      valid
	* -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from mail-iy0-f179.google.com ([209.85.210.179]:46730)
	by ppsw-50.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25)
	with esmtp id 1S7MKz-0002zU-sn (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <raphlalou@gmail.com>); Tue, 13 Mar 2012 07:40:06 +0000
Received: by iakh37 with SMTP id h37so475116iak.38
	for <cl-mirage@lists.cam.ac.uk>; Tue, 13 Mar 2012 00:40:05 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.43.52.74 with SMTP id vl10mr18963968icb.55.1331624405273; Tue,
	13 Mar 2012 00:40:05 -0700 (PDT)
Received: by 10.42.142.130 with HTTP; Tue, 13 Mar 2012 00:40:05 -0700 (PDT)
In-Reply-To: <E50EC41D-2F67-44AB-A633-B1F95FD14FB0@nottingham.ac.uk>
References: <E50EC41D-2F67-44AB-A633-B1F95FD14FB0@nottingham.ac.uk>
Date: Tue, 13 Mar 2012 08:40:05 +0100
Message-ID: <CAAmHUAnLEUVOQcx3Q8Pe1meTK1909THS8zkM9dfmXNP=oAUGNw@mail.gmail.com>
Subject: Re: error handling
From: Raphael Proust <raphlalou@gmail.com>
To: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Cc: "cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Tue, 13 Mar 2012 07:40:06 -0000
X-Keywords:                  
X-UID: 219
Status: O
Content-Length: 2608
Lines: 68

On Tue, Mar 13, 2012 at 12:16 AM, Richard Mortier
<Richard.Mortier@nottingham.ac.uk> wrote:
> not the most exciting topic perhaps, but traditionally seems thorny.
>
> i'm trying to fix up ocaml-dns to be both a bit more correct and a bit mo=
re robust.
>
> aiui, standard ocaml exceptions must not be allowed to propagate up to th=
e point where they hit an Lwt thread, as that is Bad.
>
> but there are a number of places in ocaml-dns -- and i expect that this w=
ill not be uncommon -- where functions raise exceptions indicating things l=
ike unparseable data (for whatever reason) has been received off the wire.
>
> what i'd normally do here would be to cause current processing to cease, =
to return the unparseable data that caused the error so it can be logged, a=
nd continue from some suitable point.
>
> my question is- what's the best way to do that under Lwt?
>
> i've tried the following but have some questions:
>
> 1/ using raise_lwt instead of raise means that every function in question=
 -- often these are subsidiary/helper functions =C2=A0-- need to start retu=
rning 'a Lwt.t; does propagating the Lwt-ness all the way through matter at=
 all, or do i just need to start doing lots of ">>" to chain things togethe=
r, rather than using ";"?

It is not that big a matter in that not all lwt monad binds are actual
cooperation points (i.e. they don't always go through the scheduler,
i.e. they sometime are just as cheap as function calls).

It is a bit of a problem if someone wants to transform your code into
non-lwt one (e.g. to preemptive code or to async) as the algorithmic
and threading logics are mixed.

>
> 2/ making return types 'a option rather than 'a -- but this does not work=
 to return the unparseable bits

Or [('a, exn) either] if you prefer the exception monad to the option
one. (See http://blog.dbpatterson.com/post/9528836599 on this topic.)

>
> 3/ logging the error (via Lwt_json_logger no less!) -- but this does not =
let me indicate that processing should stop at the appropriate place

IMHO this should be used additionally to exceptions. One is for
control flow management, the other for sys-admin purpose.

>
> 4/ leaving the standard "raise" exceptions in and trying to be careful to=
 catch them -- but this relies on me remembering all the entry points into =
the library

This can be combined with the wrap function:
wrap f calls f and transform the result into a monad. If f raise an
exception, it is catched by Lwt.

You can use wrap at the interface between non-lwt parts and lwt parts.
It avoids the problem of 1/.


Cheers,
--=20
_______
Raphael


From anil@recoil.org Tue Mar 13 09:36:41 2012
Received: from ppsw-50.csi.cam.ac.uk ([131.111.8.150])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S7O9p-0002mZ-30 (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Tue, 13 Mar 2012 09:36:41 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from recoil.dh.bytemark.co.uk ([89.16.177.154]:13360
	helo=dark.recoil.org)
	by ppsw-50.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25)
	with smtp id 1S7O9o-00078K-rV (Exim 4.72) for cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Tue, 13 Mar 2012 09:36:41 +0000
Received: (qmail 24912 invoked by uid 634); 13 Mar 2012 09:36:40 -0000
X-Spam-Level: *
X-Spam-Status: No, hits=-1.0 required=5.0
	tests=ALL_TRUSTED
X-Spam-Check-By: dark.recoil.org
Received: from cpc7-cmbg14-2-0-cust238.5-4.cable.virginmedia.com (HELO
	[192.168.1.89]) (86.30.244.239)
	(smtp-auth username remote@recoil.org, mechanism cram-md5)
	by dark.recoil.org (qpsmtpd/0.84) with ESMTPA;
	Tue, 13 Mar 2012 09:36:39 +0000
Subject: Re: error handling
Mime-Version: 1.0 (Apple Message framework v1257)
Content-Type: text/plain; charset=us-ascii
From: Anil Madhavapeddy <anil@recoil.org>
In-Reply-To: <CAAmHUAnLEUVOQcx3Q8Pe1meTK1909THS8zkM9dfmXNP=oAUGNw@mail.gmail.com>
Date: Tue, 13 Mar 2012 09:36:37 +0000
Content-Transfer-Encoding: quoted-printable
Message-Id: <DD2536BE-A800-45FE-9273-4170B75592FB@recoil.org>
References: <E50EC41D-2F67-44AB-A633-B1F95FD14FB0@nottingham.ac.uk>
	<CAAmHUAnLEUVOQcx3Q8Pe1meTK1909THS8zkM9dfmXNP=oAUGNw@mail.gmail.com>
To: Raphael Proust <raphlalou@gmail.com>
X-Mailer: Apple Mail (2.1257)
X-Virus-Checked: Checked by ClamAV on dark.recoil.org
Cc: Richard Mortier <Richard.Mortier@nottingham.ac.uk>,
	"cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Tue, 13 Mar 2012 09:36:41 -0000
X-Keywords:                  
X-UID: 220
Status: O
Content-Length: 2888
Lines: 74

On 13 Mar 2012, at 07:40, Raphael Proust wrote:

> On Tue, Mar 13, 2012 at 12:16 AM, Richard Mortier
> <Richard.Mortier@nottingham.ac.uk> wrote:
>> not the most exciting topic perhaps, but traditionally seems thorny.
>>=20
>> i'm trying to fix up ocaml-dns to be both a bit more correct and a =
bit more robust.
>>=20
>> aiui, standard ocaml exceptions must not be allowed to propagate up =
to the point where they hit an Lwt thread, as that is Bad.
>>=20
>> but there are a number of places in ocaml-dns -- and i expect that =
this will not be uncommon -- where functions raise exceptions indicating =
things like unparseable data (for whatever reason) has been received off =
the wire.
>>=20
>> what i'd normally do here would be to cause current processing to =
cease, to return the unparseable data that caused the error so it can be =
logged, and continue from some suitable point.
>>=20
>> my question is- what's the best way to do that under Lwt?
>>=20
>> i've tried the following but have some questions:
>>=20
>> 1/ using raise_lwt instead of raise means that every function in =
question -- often these are subsidiary/helper functions  -- need to =
start returning 'a Lwt.t; does propagating the Lwt-ness all the way =
through matter at all, or do i just need to start doing lots of ">>" to =
chain things together, rather than using ";"?
>=20
> It is not that big a matter in that not all lwt monad binds are actual
> cooperation points (i.e. they don't always go through the scheduler,
> i.e. they sometime are just as cheap as function calls).
>=20
> It is a bit of a problem if someone wants to transform your code into
> non-lwt one (e.g. to preemptive code or to async) as the algorithmic
> and threading logics are mixed.

Agreed; at a slightly higher level, I've been structuring my libraries=20=

into two halves:

- a pure protocol implementation that only uses the non-UNIX portions
of Lwt: specifically, Lwt_stream to handle blocking iteration. This =
library
should be reentrant, and have all its configuration passed into the
initialiser (i.e. no config files).

- a concrete client/server that uses the library and Lwt_io (and other
Unix modules) to build a real server. This can have config files and =
such.

In the library code, it's fine to have it be mostly non-Lwt (to make =
future
ports to something like Async possible), and use `wrap` as Raphael =
describes
to convert a normal OCaml exception into an Lwt one.  However, we must =
be
*very* careful to not let normal OCaml exceptions leak into an Lwt =
thread,
or else you end up with the dreaded 'random Not_found at the toplevel' =
result.

We do need a few more bits of scaffolding to make logging easier than it =
is
at the moment. I'm just about to upload my ocaml-workflow module (which =
is a=20
sort of CIEL meets inetd and persistent threads) and we can figure it =
out=20
from there.

-anil=


From raphlalou@gmail.com Tue Mar 13 09:53:50 2012
Received: from ppsw-51.csi.cam.ac.uk ([131.111.8.151])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S7OQQ-0003y9-Ep (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <raphlalou@gmail.com>); Tue, 13 Mar 2012 09:53:50 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -2.7 from SpamAssassin-3.3.2-1293136 
	* -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/,
	low *      trust
	*      [209.85.210.179 listed in list.dnswl.dnsbl.ja.net]
	* 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail
	provider *       (raphlalou[at]gmail.com)
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
	* -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from
	*      author's domain
	*  0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily
	*      valid
	* -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from mail-iy0-f179.google.com ([209.85.210.179]:42409)
	by ppsw-51.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25)
	with esmtp id 1S7OQP-0002DK-YD (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <raphlalou@gmail.com>); Tue, 13 Mar 2012 09:53:50 +0000
Received: by iakh37 with SMTP id h37so639651iak.38
	for <cl-mirage@lists.cam.ac.uk>; Tue, 13 Mar 2012 02:53:48 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.43.52.74 with SMTP id vl10mr19471536icb.55.1331632428786; Tue,
	13 Mar 2012 02:53:48 -0700 (PDT)
Received: by 10.42.142.130 with HTTP; Tue, 13 Mar 2012 02:53:48 -0700 (PDT)
In-Reply-To: <DD2536BE-A800-45FE-9273-4170B75592FB@recoil.org>
References: <E50EC41D-2F67-44AB-A633-B1F95FD14FB0@nottingham.ac.uk>
	<CAAmHUAnLEUVOQcx3Q8Pe1meTK1909THS8zkM9dfmXNP=oAUGNw@mail.gmail.com>
	<DD2536BE-A800-45FE-9273-4170B75592FB@recoil.org>
Date: Tue, 13 Mar 2012 10:53:48 +0100
Message-ID: <CAAmHUAkZNQuxwTQ-K+RozVuhfVJQNZopeCBokjx8RpJX7gUfZg@mail.gmail.com>
Subject: Re: error handling
From: Raphael Proust <raphlalou@gmail.com>
To: Anil Madhavapeddy <anil@recoil.org>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Cc: Richard Mortier <Richard.Mortier@nottingham.ac.uk>,
	"cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Tue, 13 Mar 2012 09:53:50 -0000
X-Keywords:                  
X-UID: 221
Status: O
Content-Length: 2988
Lines: 77

On Tue, Mar 13, 2012 at 10:36 AM, Anil Madhavapeddy <anil@recoil.org> wrote=
:
> On 13 Mar 2012, at 07:40, Raphael Proust wrote:
>
>> On Tue, Mar 13, 2012 at 12:16 AM, Richard Mortier
>> <Richard.Mortier@nottingham.ac.uk> wrote:
>>> not the most exciting topic perhaps, but traditionally seems thorny.
>>>
>>> i'm trying to fix up ocaml-dns to be both a bit more correct and a bit =
more robust.
>>>
>>> aiui, standard ocaml exceptions must not be allowed to propagate up to =
the point where they hit an Lwt thread, as that is Bad.
>>>
>>> but there are a number of places in ocaml-dns -- and i expect that this=
 will not be uncommon -- where functions raise exceptions indicating things=
 like unparseable data (for whatever reason) has been received off the wire=
.
>>>
>>> what i'd normally do here would be to cause current processing to cease=
, to return the unparseable data that caused the error so it can be logged,=
 and continue from some suitable point.
>>>
>>> my question is- what's the best way to do that under Lwt?
>>>
>>> i've tried the following but have some questions:
>>>
>>> 1/ using raise_lwt instead of raise means that every function in questi=
on -- often these are subsidiary/helper functions =C2=A0-- need to start re=
turning 'a Lwt.t; does propagating the Lwt-ness all the way through matter =
at all, or do i just need to start doing lots of ">>" to chain things toget=
her, rather than using ";"?
>>
>> It is not that big a matter in that not all lwt monad binds are actual
>> cooperation points (i.e. they don't always go through the scheduler,
>> i.e. they sometime are just as cheap as function calls).
>>
>> It is a bit of a problem if someone wants to transform your code into
>> non-lwt one (e.g. to preemptive code or to async) as the algorithmic
>> and threading logics are mixed.
>
> Agreed; at a slightly higher level, I've been structuring my libraries
> into two halves:
>
> - a pure protocol implementation that only uses the non-UNIX portions
> of Lwt: specifically, Lwt_stream to handle blocking iteration. This libra=
ry
> should be reentrant, and have all its configuration passed into the
> initialiser (i.e. no config files).
>
> - a concrete client/server that uses the library and Lwt_io (and other
> Unix modules) to build a real server. This can have config files and such=
.
>
> In the library code, it's fine to have it be mostly non-Lwt (to make futu=
re
> ports to something like Async possible), and use `wrap` as Raphael descri=
bes
> to convert a normal OCaml exception into an Lwt one. =C2=A0However, we mu=
st be
> *very* careful to not let normal OCaml exceptions leak into an Lwt thread=
,
> or else you end up with the dreaded 'random Not_found at the toplevel' re=
sult.

Wouldn't it be possible to use ocaml-exc (ocamlpro's uncaught
exception analyser) with (possibly a fake version of) Lwt to check for
that?

The worst case involves replacing lwt's *.ml (not touching the *.mli at all=
).


--=20
_______
Raphael


From anil@recoil.org Tue Mar 13 09:57:25 2012
Received: from ppsw-50.csi.cam.ac.uk ([131.111.8.150])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S7OTt-0004DQ-5N (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Tue, 13 Mar 2012 09:57:25 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from recoil.dh.bytemark.co.uk ([89.16.177.154]:36896
	helo=dark.recoil.org)
	by ppsw-50.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25)
	with smtp id 1S7OTs-0005Ux-rr (Exim 4.72) for cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Tue, 13 Mar 2012 09:57:25 +0000
Received: (qmail 31718 invoked by uid 634); 13 Mar 2012 09:57:24 -0000
X-Spam-Level: *
X-Spam-Status: No, hits=-1.0 required=5.0
	tests=ALL_TRUSTED
X-Spam-Check-By: dark.recoil.org
Received: from cpc7-cmbg14-2-0-cust238.5-4.cable.virginmedia.com (HELO
	[192.168.1.89]) (86.30.244.239)
	(smtp-auth username remote@recoil.org, mechanism cram-md5)
	by dark.recoil.org (qpsmtpd/0.84) with ESMTPA;
	Tue, 13 Mar 2012 09:57:23 +0000
Subject: Re: error handling
Mime-Version: 1.0 (Apple Message framework v1257)
Content-Type: text/plain; charset=us-ascii
From: Anil Madhavapeddy <anil@recoil.org>
In-Reply-To: <CAAmHUAkZNQuxwTQ-K+RozVuhfVJQNZopeCBokjx8RpJX7gUfZg@mail.gmail.com>
Date: Tue, 13 Mar 2012 09:57:22 +0000
Content-Transfer-Encoding: quoted-printable
Message-Id: <1E948B7D-B234-447D-A3C5-09820B20C5A9@recoil.org>
References: <E50EC41D-2F67-44AB-A633-B1F95FD14FB0@nottingham.ac.uk>
	<CAAmHUAnLEUVOQcx3Q8Pe1meTK1909THS8zkM9dfmXNP=oAUGNw@mail.gmail.com>
	<DD2536BE-A800-45FE-9273-4170B75592FB@recoil.org>
	<CAAmHUAkZNQuxwTQ-K+RozVuhfVJQNZopeCBokjx8RpJX7gUfZg@mail.gmail.com>
To: Raphael Proust <raphlalou@gmail.com>
X-Mailer: Apple Mail (2.1257)
X-Virus-Checked: Checked by ClamAV on dark.recoil.org
Cc: Richard Mortier <Richard.Mortier@nottingham.ac.uk>,
	"cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Tue, 13 Mar 2012 09:57:25 -0000
X-Keywords:                  
X-UID: 222
Status: O
Content-Length: 3305
Lines: 89


On 13 Mar 2012, at 09:53, Raphael Proust wrote:

> On Tue, Mar 13, 2012 at 10:36 AM, Anil Madhavapeddy <anil@recoil.org> =
wrote:
>> On 13 Mar 2012, at 07:40, Raphael Proust wrote:
>>=20
>>> On Tue, Mar 13, 2012 at 12:16 AM, Richard Mortier
>>> <Richard.Mortier@nottingham.ac.uk> wrote:
>>>> not the most exciting topic perhaps, but traditionally seems =
thorny.
>>>>=20
>>>> i'm trying to fix up ocaml-dns to be both a bit more correct and a =
bit more robust.
>>>>=20
>>>> aiui, standard ocaml exceptions must not be allowed to propagate up =
to the point where they hit an Lwt thread, as that is Bad.
>>>>=20
>>>> but there are a number of places in ocaml-dns -- and i expect that =
this will not be uncommon -- where functions raise exceptions indicating =
things like unparseable data (for whatever reason) has been received off =
the wire.
>>>>=20
>>>> what i'd normally do here would be to cause current processing to =
cease, to return the unparseable data that caused the error so it can be =
logged, and continue from some suitable point.
>>>>=20
>>>> my question is- what's the best way to do that under Lwt?
>>>>=20
>>>> i've tried the following but have some questions:
>>>>=20
>>>> 1/ using raise_lwt instead of raise means that every function in =
question -- often these are subsidiary/helper functions  -- need to =
start returning 'a Lwt.t; does propagating the Lwt-ness all the way =
through matter at all, or do i just need to start doing lots of ">>" to =
chain things together, rather than using ";"?
>>>=20
>>> It is not that big a matter in that not all lwt monad binds are =
actual
>>> cooperation points (i.e. they don't always go through the scheduler,
>>> i.e. they sometime are just as cheap as function calls).
>>>=20
>>> It is a bit of a problem if someone wants to transform your code =
into
>>> non-lwt one (e.g. to preemptive code or to async) as the algorithmic
>>> and threading logics are mixed.
>>=20
>> Agreed; at a slightly higher level, I've been structuring my =
libraries
>> into two halves:
>>=20
>> - a pure protocol implementation that only uses the non-UNIX portions
>> of Lwt: specifically, Lwt_stream to handle blocking iteration. This =
library
>> should be reentrant, and have all its configuration passed into the
>> initialiser (i.e. no config files).
>>=20
>> - a concrete client/server that uses the library and Lwt_io (and =
other
>> Unix modules) to build a real server. This can have config files and =
such.
>>=20
>> In the library code, it's fine to have it be mostly non-Lwt (to make =
future
>> ports to something like Async possible), and use `wrap` as Raphael =
describes
>> to convert a normal OCaml exception into an Lwt one.  However, we =
must be
>> *very* careful to not let normal OCaml exceptions leak into an Lwt =
thread,
>> or else you end up with the dreaded 'random Not_found at the =
toplevel' result.
>=20
> Wouldn't it be possible to use ocaml-exc (ocamlpro's uncaught
> exception analyser) with (possibly a fake version of) Lwt to check for
> that?

Yeah, but last I checked, it hadn't been updated beyond an old version =
of
OCaml. I know Fabrice updated it, but I don't think it's working against
3.12 yet.

It would be a good use of it to check for exception 'barriers' between =
the
Lwt monad and not though...

-anil



From Richard.Mortier@nottingham.ac.uk Tue Mar 13 14:16:07 2012
Received: from ppsw-51.csi.cam.ac.uk ([131.111.8.151])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S7SWF-00016U-5h (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Tue, 13 Mar 2012 14:16:07 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from ixe-mta-19-tx.emailfiltering.com ([194.116.198.150]:46234
	helo=ixe-mta-19.emailfiltering.com)
	by ppsw-51.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25)
	with esmtp id 1S7SW9-0002Ya-X4 (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Tue, 13 Mar 2012 14:16:07 +0000
Received: from smtp2.nottingham.ac.uk ([128.243.44.5])
	by ixe-mta-19.emailfiltering.com with emfmta (version 4.8.5.86) by TLS
	id 2169394116 ;76f54869c31cb78a; Tue, 13 Mar 2012 14:15:41 +0000
Received: from uiwexhub01.ad.nottingham.ac.uk ([128.243.15.133])
	by smtp2.nottingham.ac.uk with esmtps (TLSv1:AES128-SHA:128)
	(Exim 4.77) (envelope-from <Richard.Mortier@nottingham.ac.uk>)
	id 1S7SVo-0005rM-Nh
	for cl-mirage@lists.cam.ac.uk; Tue, 13 Mar 2012 14:15:40 +0000
Received: from EXCHANGE1.ad.nottingham.ac.uk ([fe80::7962:f868:e6ee:6267]) by
	UIWEXHUB01.ad.nottingham.ac.uk ([2002:80f3:f85::80f3:f85]) with mapi;
	Tue, 13 Mar 2012 14:15:39 +0000
From: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
To: Raphael Proust <raphlalou@gmail.com>
Date: Tue, 13 Mar 2012 14:15:39 +0000
Subject: Re: error handling
Thread-Topic: error handling
Thread-Index: Ac0BI8Nykdqja3C3TWOSUDFXSMUaOQ==
Message-ID: <FCB436D1-F402-4B28-869B-507A72019078@nottingham.ac.uk>
References: <E50EC41D-2F67-44AB-A633-B1F95FD14FB0@nottingham.ac.uk>
	<CAAmHUAnLEUVOQcx3Q8Pe1meTK1909THS8zkM9dfmXNP=oAUGNw@mail.gmail.com>
In-Reply-To: <CAAmHUAnLEUVOQcx3Q8Pe1meTK1909THS8zkM9dfmXNP=oAUGNw@mail.gmail.com>
Accept-Language: en-US, en-GB
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
acceptlanguage: en-US, en-GB
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: "cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Tue, 13 Mar 2012 14:16:07 -0000
X-Keywords:                  
X-UID: 223
Status: O
Content-Length: 3819
Lines: 93


On 13 Mar 2012, at 07:40, Raphael Proust wrote:

> On Tue, Mar 13, 2012 at 12:16 AM, Richard Mortier
> <Richard.Mortier@nottingham.ac.uk> wrote:
>> not the most exciting topic perhaps, but traditionally seems thorny.
>>=20
>> i'm trying to fix up ocaml-dns to be both a bit more correct and a bit m=
ore robust.
>>=20
>> aiui, standard ocaml exceptions must not be allowed to propagate up to t=
he point where they hit an Lwt thread, as that is Bad.
>>=20
>> but there are a number of places in ocaml-dns -- and i expect that this =
will not be uncommon -- where functions raise exceptions indicating things =
like unparseable data (for whatever reason) has been received off the wire.
>>=20
>> what i'd normally do here would be to cause current processing to cease,=
 to return the unparseable data that caused the error so it can be logged, =
and continue from some suitable point.
>>=20
>> my question is- what's the best way to do that under Lwt?
>>=20
>> i've tried the following but have some questions:
>>=20
>> 1/ using raise_lwt instead of raise means that every function in questio=
n -- often these are subsidiary/helper functions  -- need to start returnin=
g 'a Lwt.t; does propagating the Lwt-ness all the way through matter at all=
, or do i just need to start doing lots of ">>" to chain things together, r=
ather than using ";"?
>=20
> It is not that big a matter in that not all lwt monad binds are actual
> cooperation points (i.e. they don't always go through the scheduler,
> i.e. they sometime are just as cheap as function calls).

ah- thanks, i thought that might be the case :)

> It is a bit of a problem if someone wants to transform your code into
> non-lwt one (e.g. to preemptive code or to async) as the algorithmic
> and threading logics are mixed.

yup, true.  (would there be benefits of moving to async cf lwt other than t=
hat it's in core?)

>> 2/ making return types 'a option rather than 'a -- but this does not wor=
k to return the unparseable bits
>=20
> Or [('a, exn) either] if you prefer the exception monad to the option
> one. (See http://blog.dbpatterson.com/post/9528836599 on this topic.)

hm- interesting, thanks.

>> 3/ logging the error (via Lwt_json_logger no less!) -- but this does not=
 let me indicate that processing should stop at the appropriate place
>=20
> IMHO this should be used additionally to exceptions. One is for
> control flow management, the other for sys-admin purpose.

yes, agree - i was just trying out a bunch of different things i came acros=
s :)

>> 4/ leaving the standard "raise" exceptions in and trying to be careful t=
o catch them -- but this relies on me remembering all the entry points into=
 the library
>=20
> This can be combined with the wrap function:
> wrap f calls f and transform the result into a monad. If f raise an
> exception, it is catched by Lwt.
>=20
> You can use wrap at the interface between non-lwt parts and lwt parts.
> It avoids the problem of 1/.

ok- that makes sense - will give it a go.

--=20
Cheers,

R.


=
This message and any attachment are intended solely for the addressee a=
nd may contain confidential information. If you have received this mess=
age in error, please send it back to me, and immediately delete it.   P=
lease do not use, copy or disclose the information contained in this me=
ssage or in any attachment.  Any views or opinions expressed by the aut=
hor of this email do not necessarily reflect the views of the Universit=
y of Nottingham.=0D=0A=0D=0AThis message has been checked for viruses b=
ut the contents of an attachment=0D=0Amay still contain software viruse=
s which could damage your computer system:=0D=0Ayou are advised to perf=
orm your own checks. Email communications with the=0D=0AUniversity of N=
ottingham may be monitored as permitted by UK legislation.=


From thomas.gazagnaire@gmail.com Tue Mar 13 14:24:52 2012
Received: from ppsw-50.csi.cam.ac.uk ([131.111.8.150])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S7Sei-0001cF-Hx (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <thomas.gazagnaire@gmail.com>);
	Tue, 13 Mar 2012 14:24:52 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -2.7 from SpamAssassin-3.3.2-1293136 
	* -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/,
	low *      trust
	*      [74.125.82.179 listed in list.dnswl.dnsbl.ja.net]
	* 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail
	provider *       (thomas.gazagnaire[at]gmail.com)
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
	* -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from
	*      author's domain
	*  0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily
	*      valid
	* -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from mail-we0-f179.google.com ([74.125.82.179]:56527)
	by ppsw-50.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25)
	with esmtp id 1S7Scr-0008LW-q3 (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <thomas.gazagnaire@gmail.com>);
	Tue, 13 Mar 2012 14:24:52 +0000
Received: by werg1 with SMTP id g1so592296wer.38
	for <cl-mirage@lists.cam.ac.uk>; Tue, 13 Mar 2012 07:22:57 -0700 (PDT)
Received: by 10.216.135.206 with SMTP id u56mr9906065wei.29.1331648576875;
	Tue, 13 Mar 2012 07:22:56 -0700 (PDT)
Received: from chercheurs2-252.saclay.inria.fr
	(chercheurs2-252.saclay.inria.fr. [193.55.250.252])
	by mx.google.com with ESMTPS id d7sm2879768wiz.6.2012.03.13.07.22.55
	(version=TLSv1/SSLv3 cipher=OTHER);
	Tue, 13 Mar 2012 07:22:55 -0700 (PDT)
Subject: Re: error handling
Mime-Version: 1.0 (Apple Message framework v1084)
Content-Type: text/plain; charset=iso-8859-1
From: Thomas Gazagnaire <thomas.gazagnaire@gmail.com>
In-Reply-To: <CAAmHUAkZNQuxwTQ-K+RozVuhfVJQNZopeCBokjx8RpJX7gUfZg@mail.gmail.com>
Date: Tue, 13 Mar 2012 15:22:54 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <A4CF3D12-2695-41BD-9B6D-147E8D97DCAC@gmail.com>
References: <E50EC41D-2F67-44AB-A633-B1F95FD14FB0@nottingham.ac.uk>
	<CAAmHUAnLEUVOQcx3Q8Pe1meTK1909THS8zkM9dfmXNP=oAUGNw@mail.gmail.com>
	<DD2536BE-A800-45FE-9273-4170B75592FB@recoil.org>
	<CAAmHUAkZNQuxwTQ-K+RozVuhfVJQNZopeCBokjx8RpJX7gUfZg@mail.gmail.com>
To: Raphael Proust <raphlalou@gmail.com>
X-Mailer: Apple Mail (2.1084)
Cc: Richard Mortier <Richard.Mortier@nottingham.ac.uk>,
	"cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>,
	Anil Madhavapeddy <anil@recoil.org>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Tue, 13 Mar 2012 14:24:52 -0000
X-Keywords:                  
X-UID: 224
Status: O
Content-Length: 537
Lines: 14

> Wouldn't it be possible to use ocaml-exc (ocamlpro's uncaught
> exception analyser) with (possibly a fake version of) Lwt to check for
> that?

ocamlexc has been made to compile with the latest version of ocaml, but =
we haven't started yet to use it with recent OCaml programs (and the UI =
is a bit weird). We are trying to find someone to work on that though =
:-) We'll met Fran=E7ois Pessaux (the original writer of ocamlexc) later =
this week, so I'ill ask him directly about using its tool in the context =
of lwt.

--
Thomas=


From anil@recoil.org Tue Mar 13 14:41:23 2012
Received: from ppsw-52.csi.cam.ac.uk ([131.111.8.152])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S7Suh-0002F6-DF (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Tue, 13 Mar 2012 14:41:23 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from recoil.dh.bytemark.co.uk ([89.16.177.154]:10757
	helo=dark.recoil.org)
	by ppsw-52.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25)
	with smtp id 1S7Suf-0001Cw-Fv (Exim 4.72) for cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Tue, 13 Mar 2012 14:41:22 +0000
Received: (qmail 4302 invoked by uid 634); 13 Mar 2012 14:41:21 -0000
X-Spam-Level: *
X-Spam-Status: No, hits=-1.0 required=5.0
	tests=ALL_TRUSTED
X-Spam-Check-By: dark.recoil.org
Received: from dhcp-128-232-143-62.eduroam.csx.cam.ac.uk (HELO
	dhcp-128-232-143-62.eduroam.csx.cam.ac.uk) (128.232.143.62)
	(smtp-auth username remote@recoil.org, mechanism cram-md5)
	by dark.recoil.org (qpsmtpd/0.84) with ESMTPA;
	Tue, 13 Mar 2012 14:41:20 +0000
Subject: Re: error handling
Mime-Version: 1.0 (Apple Message framework v1257)
Content-Type: text/plain; charset=iso-8859-1
From: Anil Madhavapeddy <anil@recoil.org>
In-Reply-To: <A4CF3D12-2695-41BD-9B6D-147E8D97DCAC@gmail.com>
Date: Tue, 13 Mar 2012 14:41:19 +0000
Content-Transfer-Encoding: quoted-printable
Message-Id: <47C8922A-541D-43C1-9C18-2ECD1AE22FAD@recoil.org>
References: <E50EC41D-2F67-44AB-A633-B1F95FD14FB0@nottingham.ac.uk>
	<CAAmHUAnLEUVOQcx3Q8Pe1meTK1909THS8zkM9dfmXNP=oAUGNw@mail.gmail.com>
	<DD2536BE-A800-45FE-9273-4170B75592FB@recoil.org>
	<CAAmHUAkZNQuxwTQ-K+RozVuhfVJQNZopeCBokjx8RpJX7gUfZg@mail.gmail.com>
	<A4CF3D12-2695-41BD-9B6D-147E8D97DCAC@gmail.com>
To: Thomas Gazagnaire <thomas.gazagnaire@gmail.com>
X-Mailer: Apple Mail (2.1257)
X-Virus-Checked: Checked by ClamAV on dark.recoil.org
Cc: Richard Mortier <Richard.Mortier@nottingham.ac.uk>,
	"cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>,
	Raphael Proust <raphlalou@gmail.com>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Tue, 13 Mar 2012 14:41:23 -0000
X-Keywords:                  
X-UID: 225
Status: O
Content-Length: 915
Lines: 25

On 13 Mar 2012, at 14:22, Thomas Gazagnaire wrote:

>> Wouldn't it be possible to use ocaml-exc (ocamlpro's uncaught
>> exception analyser) with (possibly a fake version of) Lwt to check =
for
>> that?
>=20
> ocamlexc has been made to compile with the latest version of ocaml, =
but we haven't started yet to use it with recent OCaml programs (and the =
UI is a bit weird). We are trying to find someone to work on that though =
:-) We'll met Fran=E7ois Pessaux (the original writer of ocamlexc) later =
this week, so I'ill ask him directly about using its tool in the context =
of lwt.

Can it work on a specific module? It's the sort of thing that would be =
cool to have in
typerex:  Mouse over a module and have it tell you all the potential =
exceptions that show
up from code in that module!  I bet running it over XAPI would be =
interesting.

Have you hacked up a vim/typerex module yet, Raphael? :-)

-a=


From raphlalou@gmail.com Tue Mar 13 15:33:21 2012
Received: from ppsw-51.csi.cam.ac.uk ([131.111.8.151])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S7Tiz-0004X6-O3 (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <raphlalou@gmail.com>); Tue, 13 Mar 2012 15:33:21 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -2.7 from SpamAssassin-3.3.2-1293136 
	* -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/,
	low *      trust
	*      [209.85.220.179 listed in list.dnswl.dnsbl.ja.net]
	* 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail
	provider *       (raphlalou[at]gmail.com)
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
	* -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from
	*      author's domain
	*  0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily
	*      valid
	* -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from mail-vx0-f179.google.com ([209.85.220.179]:63103)
	by ppsw-51.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25)
	with esmtp id 1S7Tix-0005ol-YO (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <raphlalou@gmail.com>); Tue, 13 Mar 2012 15:33:21 +0000
Received: by vcbf11 with SMTP id f11so782854vcb.38
	for <cl-mirage@lists.cam.ac.uk>; Tue, 13 Mar 2012 08:33:19 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.52.180.38 with SMTP id dl6mr17517422vdc.105.1331652799060;
	Tue, 13 Mar 2012 08:33:19 -0700 (PDT)
Received: by 10.220.189.67 with HTTP; Tue, 13 Mar 2012 08:33:18 -0700 (PDT)
In-Reply-To: <47C8922A-541D-43C1-9C18-2ECD1AE22FAD@recoil.org>
References: <E50EC41D-2F67-44AB-A633-B1F95FD14FB0@nottingham.ac.uk>
	<CAAmHUAnLEUVOQcx3Q8Pe1meTK1909THS8zkM9dfmXNP=oAUGNw@mail.gmail.com>
	<DD2536BE-A800-45FE-9273-4170B75592FB@recoil.org>
	<CAAmHUAkZNQuxwTQ-K+RozVuhfVJQNZopeCBokjx8RpJX7gUfZg@mail.gmail.com>
	<A4CF3D12-2695-41BD-9B6D-147E8D97DCAC@gmail.com>
	<47C8922A-541D-43C1-9C18-2ECD1AE22FAD@recoil.org>
Date: Tue, 13 Mar 2012 16:33:18 +0100
Message-ID: <CAAmHUA=bKgPOqLQVrO0ZNKcBFFa4QUVcUaE=DOYD1xasy825tg@mail.gmail.com>
Subject: Re: error handling
From: Raphael Proust <raphlalou@gmail.com>
To: Anil Madhavapeddy <anil@recoil.org>
Content-Type: text/plain; charset=UTF-8
Cc: Richard Mortier <Richard.Mortier@nottingham.ac.uk>,
	"cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>,
	Thomas Gazagnaire <thomas.gazagnaire@gmail.com>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Tue, 13 Mar 2012 15:33:21 -0000
X-Keywords:                  
X-UID: 226
Status: O
Content-Length: 668
Lines: 19

On Tue, Mar 13, 2012 at 3:41 PM, Anil Madhavapeddy <anil@recoil.org> wrote:
> On 13 Mar 2012, at 14:22, Thomas Gazagnaire wrote:
> Have you hacked up a vim/typerex module yet, Raphael? :-)

Nope.

I discussed it with Tiphaine and I am still unsure of the right way to
do it. There are a lot of emacs specific way of doing stuff (the way
undo/redo is managed (anyone wanting to troll should know that emacs'
history is linear..!), the use of a functional scripting language,
nested API calls, and a few other things).

As I don't have my laptop (Lenovo has a weird way of doing machine
replacement), coding is difficult. Hence I'm reading papers.

-- 
_______
Raphael


From raphlalou@gmail.com Tue Mar 13 15:40:40 2012
Received: from ppsw-52.csi.cam.ac.uk ([131.111.8.152])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S7Tq4-00052w-38 (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <raphlalou@gmail.com>); Tue, 13 Mar 2012 15:40:40 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -2.7 from SpamAssassin-3.3.2-1293136 
	* -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/,
	low *      trust
	*      [209.85.210.179 listed in list.dnswl.dnsbl.ja.net]
	* 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail
	provider *       (raphlalou[at]gmail.com)
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
	* -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from
	*      author's domain
	*  0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily
	*      valid
	* -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from mail-iy0-f179.google.com ([209.85.210.179]:52079)
	by ppsw-52.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25)
	with esmtp id 1S7Tq0-0001qd-D9 (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <raphlalou@gmail.com>); Tue, 13 Mar 2012 15:40:39 +0000
Received: by iakh37 with SMTP id h37so1096096iak.38
	for <cl-mirage@lists.cam.ac.uk>; Tue, 13 Mar 2012 08:40:35 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.50.193.131 with SMTP id ho3mr5378957igc.55.1331653235155; Tue,
	13 Mar 2012 08:40:35 -0700 (PDT)
Received: by 10.42.142.130 with HTTP; Tue, 13 Mar 2012 08:40:35 -0700 (PDT)
In-Reply-To: <CAAmHUA=bKgPOqLQVrO0ZNKcBFFa4QUVcUaE=DOYD1xasy825tg@mail.gmail.com>
References: <E50EC41D-2F67-44AB-A633-B1F95FD14FB0@nottingham.ac.uk>
	<CAAmHUAnLEUVOQcx3Q8Pe1meTK1909THS8zkM9dfmXNP=oAUGNw@mail.gmail.com>
	<DD2536BE-A800-45FE-9273-4170B75592FB@recoil.org>
	<CAAmHUAkZNQuxwTQ-K+RozVuhfVJQNZopeCBokjx8RpJX7gUfZg@mail.gmail.com>
	<A4CF3D12-2695-41BD-9B6D-147E8D97DCAC@gmail.com>
	<47C8922A-541D-43C1-9C18-2ECD1AE22FAD@recoil.org>
	<CAAmHUA=bKgPOqLQVrO0ZNKcBFFa4QUVcUaE=DOYD1xasy825tg@mail.gmail.com>
Date: Tue, 13 Mar 2012 16:40:35 +0100
Message-ID: <CAAmHUAkWX9vwAg+=K_dw30YJru=KXZpz1UNxHC559KVh9qkt7w@mail.gmail.com>
Subject: Re: error handling
From: Raphael Proust <raphlalou@gmail.com>
To: Anil Madhavapeddy <anil@recoil.org>
Content-Type: text/plain; charset=UTF-8
Cc: Richard Mortier <Richard.Mortier@nottingham.ac.uk>,
	"cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>,
	Thomas Gazagnaire <thomas.gazagnaire@gmail.com>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Tue, 13 Mar 2012 15:40:40 -0000
X-Keywords:                  
X-UID: 227
Status: O
Content-Length: 748
Lines: 21

On Tue, Mar 13, 2012 at 4:33 PM, Raphael Proust <raphlalou@gmail.com> wrote:
> On Tue, Mar 13, 2012 at 3:41 PM, Anil Madhavapeddy <anil@recoil.org> wrote:
>> On 13 Mar 2012, at 14:22, Thomas Gazagnaire wrote:
>> Have you hacked up a vim/typerex module yet, Raphael? :-)
>
> Nope.
>
> I discussed it with Tiphaine and I am still unsure of the right way to
> do it. There are a lot of emacs specific way of doing stuff (the way
> undo/redo is managed (anyone wanting to troll should know that emacs'
> history is linear..!), the use of a functional scripting language,
> nested API calls, and a few other things).

Although the 1.0.0 release announced 30 minutes ago seems to have a
better separation of Emacs specific things.


-- 
_______
Raphael


From avsm@dark.recoil.org Wed Mar 14 14:09:05 2012
Received: from ppsw-50.csi.cam.ac.uk ([131.111.8.150])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S7osz-0001m1-GN (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <avsm@dark.recoil.org>); Wed, 14 Mar 2012 14:09:05 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from recoil.dh.bytemark.co.uk ([89.16.177.154]:26477
	helo=dark.recoil.org)
	by ppsw-50.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.147]:25)
	with smtp id 1S7osy-0000Pe-rZ (Exim 4.72) for cl-mirage@lists.cam.ac.uk
	(return-path <avsm@dark.recoil.org>); Wed, 14 Mar 2012 14:09:05 +0000
Received: (qmail 26475 invoked by uid 10000); 14 Mar 2012 14:09:04 -0000
Date: Wed, 14 Mar 2012 14:09:03 +0000
From: Anil Madhavapeddy <anil@recoil.org>
To: cl-mirage@lists.cam.ac.uk
Subject: ocaml-dns and dependencies, and an SSH easter egg
Message-ID: <20120314140901.GA31275@dark.recoil.org>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
User-Agent: Mutt/1.5.21 (2010-09-15)
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Wed, 14 Mar 2012 14:09:05 -0000
X-Keywords:                  
X-UID: 228
Status: O
Content-Length: 1550
Lines: 31

I've just merged in Haris' and Mort's work on DNSSEC into ocaml-dns (which
is awesome!).  A quick note on dependencies... I noticed the patchsetg
added extlib in there, which is a grab-bag of useful additional functions.

However, these 'mega stdlibs' make it very difficult to make the Xen
microkernels compile, as they pull in all kinds of UNIX-specific stuff. So
in this case, I removed the dependency and used Cryptokit's Base64
transformer instead (and Cryptokit will definitely be made to work under
Xen).

So if you do need something from Extlib, or Core, or one of the stdlibs,
send this list a quick mail and we'll figure out the best way forward. I
would strongly prefer to have many small libraries rather than a mega
stdlib.  Thomas is hard at work fixing the package management issues that
will bring :-)

PS: Haris, you may want to grab some code from my 2005 'mldig' which
emulates much of the front end:
https://github.com/avsm/melange/blob/master/apps/mldig/dig.ml

PPS: I've also cleaned up and uploaded http://github.com/avsm/ocaml-ssh
which is a working pure OCaml version of the SSH protocol. You can ssh
into the test program on port 22 (avsm, pass wibble) and get yourself a
shell. It should be relatively straightforward to link this in to the Xen
backend to get an interactive OCaml top-level via SSH, to make debugging a
much more pleasant experience.  The SSH code requires some, ah, "cleanup"
before release though (documented in the README).

-- 
Anil Madhavapeddy                                 http://anil.recoil.org


From Richard.Mortier@nottingham.ac.uk Fri Mar 16 01:01:55 2012
Received: from ppsw-51.csi.cam.ac.uk ([131.111.8.151])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S8LYJ-0005mZ-Oo (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Fri, 16 Mar 2012 01:01:55 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from ixe-mta-19-tx.emailfiltering.com ([194.116.198.150]:43217
	helo=ixe-mta-19.emailfiltering.com)
	by ppsw-51.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25)
	with esmtp id 1S8LYE-0002Yz-Wb (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Fri, 16 Mar 2012 01:01:55 +0000
Received: from smtp2.nottingham.ac.uk ([128.243.44.5])
	by ixe-mta-19.emailfiltering.com with emfmta (version 4.8.5.86) by TLS
	id 2173112608 ;c50a6bb278002d97; Fri, 16 Mar 2012 01:01:30 +0000
Received: from uiwexhub02.ad.nottingham.ac.uk ([128.243.15.132])
	by smtp2.nottingham.ac.uk with esmtps (TLSv1:AES128-SHA:128)
	(Exim 4.77) (envelope-from <Richard.Mortier@nottingham.ac.uk>)
	id 1S8LXt-0000ZC-O2
	for cl-mirage@lists.cam.ac.uk; Fri, 16 Mar 2012 01:01:29 +0000
Received: from EXCHANGE1.ad.nottingham.ac.uk ([fe80::7962:f868:e6ee:6267]) by
	UIWEXHUB02.ad.nottingham.ac.uk ([2002:80f3:f84::80f3:f84]) with mapi;
	Fri, 16 Mar 2012 01:01:01 +0000
From: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
To: "cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
Importance: low
X-Priority: 5
Date: Fri, 16 Mar 2012 00:58:14 +0000
Subject: f# to js compiler
Thread-Topic: f# to js compiler
Thread-Index: Ac0DEEEVzNEnZ71+TpWJOSgomyVHlw==
Message-ID: <26F6AC96-D646-4FD2-AEC3-B5F9A5F2C916@nottingham.ac.uk>
Accept-Language: en-US, en-GB
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
acceptlanguage: en-US, en-GB
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Fri, 16 Mar 2012 01:01:55 -0000
X-Keywords:                  
X-UID: 229
Status: O
Content-Length: 854
Lines: 21

tangential interest - http://pitfw.org/

--=20
Cheers,

R.


=
This message and any attachment are intended solely for the addressee a=
nd may contain confidential information. If you have received this mess=
age in error, please send it back to me, and immediately delete it.   P=
lease do not use, copy or disclose the information contained in this me=
ssage or in any attachment.  Any views or opinions expressed by the aut=
hor of this email do not necessarily reflect the views of the Universit=
y of Nottingham.=0D=0A=0D=0AThis message has been checked for viruses b=
ut the contents of an attachment=0D=0Amay still contain software viruse=
s which could damage your computer system:=0D=0Ayou are advised to perf=
orm your own checks. Email communications with the=0D=0AUniversity of N=
ottingham may be monitored as permitted by UK legislation.=


From Richard.Mortier@nottingham.ac.uk Mon Mar 19 16:19:19 2012
Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S9fIl-0006pd-2H (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Mon, 19 Mar 2012 16:19:19 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from thb-mta-19-tx.emailfiltering.com ([194.116.199.150]:58800
	helo=thb-mta-19.emailfiltering.com)
	by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25)
	with esmtp id 1S9fIf-0000rH-Q6 (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Mon, 19 Mar 2012 16:19:18 +0000
Received: from smtp2.nottingham.ac.uk ([128.243.44.5])
	by thb-mta-19.emailfiltering.com with emfmta (version 4.8.5.86) by TLS
	id 2351006030 ;acbfb6db89f357b6; Mon, 19 Mar 2012 16:18:27 +0000
Received: from uiwexhub01.ad.nottingham.ac.uk ([128.243.15.133])
	by smtp2.nottingham.ac.uk with esmtps (TLSv1:AES128-SHA:128)
	(Exim 4.77) (envelope-from <Richard.Mortier@nottingham.ac.uk>)
	id 1S9fHu-0001Se-QJ; Mon, 19 Mar 2012 16:18:26 +0000
Received: from EXCHANGE1.ad.nottingham.ac.uk ([fe80::7962:f868:e6ee:6267]) by
	UIWEXHUB01.ad.nottingham.ac.uk ([2002:80f3:f85::80f3:f85]) with mapi;
	Mon, 19 Mar 2012 16:18:24 +0000
From: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
To: Haris Rotsos <cr409@cl.cam.ac.uk>, Anil Madhavapeddy <anil@recoil.org>
Date: Mon, 19 Mar 2012 16:18:25 +0000
Subject: mirage/ovs
Thread-Topic: mirage/ovs
Thread-Index: Ac0F6+e01FH88V7VRNu4XkW71GqvpA==
Message-ID: <AC2797C3-3030-4FBD-AD5D-F60BF2E80E18@nottingham.ac.uk>
Accept-Language: en-US, en-GB
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
acceptlanguage: en-US, en-GB
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: "cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Mon, 19 Mar 2012 16:19:19 -0000
X-Keywords:                  
X-UID: 230
Status: O
Content-Length: 916
Lines: 22

so martin definitely aware of us now - toward bottom of http://yuba.stanfor=
d.edu/~casado/of-sw.html

--=20
Cheers,

R.


=
This message and any attachment are intended solely for the addressee a=
nd may contain confidential information. If you have received this mess=
age in error, please send it back to me, and immediately delete it.   P=
lease do not use, copy or disclose the information contained in this me=
ssage or in any attachment.  Any views or opinions expressed by the aut=
hor of this email do not necessarily reflect the views of the Universit=
y of Nottingham.=0D=0A=0D=0AThis message has been checked for viruses b=
ut the contents of an attachment=0D=0Amay still contain software viruse=
s which could damage your computer system:=0D=0Ayou are advised to perf=
orm your own checks. Email communications with the=0D=0AUniversity of N=
ottingham may be monitored as permitted by UK legislation.=


From Richard.Mortier@nottingham.ac.uk Mon Mar 19 21:20:37 2012
Received: from ppsw-51.csi.cam.ac.uk ([131.111.8.151])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S9k0L-0004K6-Dt (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Mon, 19 Mar 2012 21:20:37 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from thb-mta-19-tx.emailfiltering.com ([194.116.199.150]:39223
	helo=thb-mta-19.emailfiltering.com)
	by ppsw-51.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25)
	with esmtp id 1S9k0E-0005Zp-Yr (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Mon, 19 Mar 2012 21:20:37 +0000
Received: from smtp2.nottingham.ac.uk ([128.243.44.5])
	by thb-mta-19.emailfiltering.com with emfmta (version 4.8.5.86) by TLS
	id 2351293342 ;947e951063735564; Mon, 19 Mar 2012 21:20:10 +0000
Received: from uiwexhub01.ad.nottingham.ac.uk ([128.243.15.133])
	by smtp2.nottingham.ac.uk with esmtps (TLSv1:AES128-SHA:128)
	(Exim 4.77) (envelope-from <Richard.Mortier@nottingham.ac.uk>)
	id 1S9jzs-0005ML-VE
	for cl-mirage@lists.cam.ac.uk; Mon, 19 Mar 2012 21:20:09 +0000
Received: from EXCHANGE1.ad.nottingham.ac.uk ([fe80::7962:f868:e6ee:6267]) by
	UIWEXHUB01.ad.nottingham.ac.uk ([2002:80f3:f85::80f3:f85]) with mapi;
	Mon, 19 Mar 2012 21:20:05 +0000
From: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
To: "cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
Date: Mon, 19 Mar 2012 21:20:07 +0000
Subject: pattern matching strings with regexes
Thread-Topic: pattern matching strings with regexes
Thread-Index: Ac0GFg3R/r7o2tcEQTWEzxzTroiixQ==
Message-ID: <875399E8-5D21-40B2-B71F-54A9DC726A4A@nottingham.ac.uk>
Accept-Language: en-US, en-GB
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
acceptlanguage: en-US, en-GB
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Mon, 19 Mar 2012 21:20:37 -0000
X-Keywords:                  
X-UID: 231
Status: O
Content-Length: 1427
Lines: 37

i'm getting the vibe off the interwebs that the answer is "no" but i'll ask=
 anyway - is there a standard way to do this in ocaml?  something to the ef=
fect of

match s with
| "[hH]ello world!+" -> do_hello

...etc. hopefully you get the idea :)

would be quite helpful if writing eg., webapps.

if not, anyone any experience with http://mjambon.com/micmatch.html (refere=
nce manual at http://mjambon.com/mikmatch-manual.html) which looks like it =
does roughly what i'm talking about...

(anil- don't worry, i don't intend to take another syntax extension depende=
ncy in at this stage, i'm just asking :)=20

--=20
Cheers,

R.


=
This message and any attachment are intended solely for the addressee a=
nd may contain confidential information. If you have received this mess=
age in error, please send it back to me, and immediately delete it.   P=
lease do not use, copy or disclose the information contained in this me=
ssage or in any attachment.  Any views or opinions expressed by the aut=
hor of this email do not necessarily reflect the views of the Universit=
y of Nottingham.=0D=0A=0D=0AThis message has been checked for viruses b=
ut the contents of an attachment=0D=0Amay still contain software viruse=
s which could damage your computer system:=0D=0Ayou are advised to perf=
orm your own checks. Email communications with the=0D=0AUniversity of N=
ottingham may be monitored as permitted by UK legislation.=


From thomas.gazagnaire@gmail.com Mon Mar 19 21:26:37 2012
Received: from ppsw-52.csi.cam.ac.uk ([131.111.8.152])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S9k69-0004PT-4O (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <thomas.gazagnaire@gmail.com>);
	Mon, 19 Mar 2012 21:26:37 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -2.7 from SpamAssassin-3.3.2-1293136 
	* -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/,
	low *      trust
	*      [74.125.82.41 listed in list.dnswl.dnsbl.ja.net]
	* 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail
	provider *       (thomas.gazagnaire[at]gmail.com)
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
	* -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from
	*      author's domain
	*  0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily
	*      valid
	* -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from mail-wg0-f41.google.com ([74.125.82.41]:56857)
	by ppsw-52.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25)
	with esmtp id 1S9k68-000814-DZ (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <thomas.gazagnaire@gmail.com>);
	Mon, 19 Mar 2012 21:26:37 +0000
Received: by wgbds1 with SMTP id ds1so911984wgb.2
	for <cl-mirage@lists.cam.ac.uk>; Mon, 19 Mar 2012 14:26:35 -0700 (PDT)
Received: by 10.216.131.212 with SMTP id m62mr8081637wei.20.1332192395819;
	Mon, 19 Mar 2012 14:26:35 -0700 (PDT)
Received: from [192.168.0.14] (gou06-3-88-170-165-56.fbx.proxad.net.
	[88.170.165.56])
	by mx.google.com with ESMTPS id gp8sm28593109wib.5.2012.03.19.14.26.34
	(version=TLSv1/SSLv3 cipher=OTHER);
	Mon, 19 Mar 2012 14:26:35 -0700 (PDT)
Subject: Re: pattern matching strings with regexes
Mime-Version: 1.0 (Apple Message framework v1084)
Content-Type: text/plain; charset=us-ascii
From: Thomas Gazagnaire <thomas.gazagnaire@gmail.com>
In-Reply-To: <875399E8-5D21-40B2-B71F-54A9DC726A4A@nottingham.ac.uk>
Date: Mon, 19 Mar 2012 22:26:33 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <B4848A46-39D1-491E-AE5A-5C9DDAAAF01A@gmail.com>
References: <875399E8-5D21-40B2-B71F-54A9DC726A4A@nottingham.ac.uk>
To: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
X-Mailer: Apple Mail (2.1084)
Cc: "cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Mon, 19 Mar 2012 21:26:37 -0000
X-Keywords:                  
X-UID: 232
Status: O
Content-Length: 699
Lines: 17

> if not, anyone any experience with http://mjambon.com/micmatch.html =
(reference manual at http://mjambon.com/mikmatch-manual.html) which =
looks like it does roughly what i'm talking about...

That's indeed to solution I would advise. As far as I remember the =
library is quite good, and I think you can plug quite easily other =
regexp engines (as ocaml-re).=20

It's quite difficult to design a good compilation scheme with active =
patterns, so the OCaml approach is to compile optimally static patterns =
and let the complex things be handled by external libraries. That's =
maybe not  not the better user-experience choice, but it keeps the =
language simple and efficient :-)

--
Thomas=


From guillaume.yziquel@citycable.ch Mon Mar 19 21:34:35 2012
Received: from ppsw-51.csi.cam.ac.uk ([131.111.8.151])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S9kDr-0004W2-UN (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <guillaume.yziquel@citycable.ch>);
	Mon, 19 Mar 2012 21:34:35 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -0.0 T_RP_MATCHES_RCVD Envelope sender domain matches handover relay
	*      domain
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from emailfrontal2.citycable.ch ([85.218.0.121]:57545)
	by ppsw-51.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25)
	with esmtp id 1S9kDq-0002oN-ZN (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <guillaume.yziquel@citycable.ch>);
	Mon, 19 Mar 2012 21:34:35 +0000
X-Alinto-smtpauth-localdomain: Yes
Received: from seldon (unknown [85.218.93.239])
	(Authenticated sender: guillaume.yziquel@citycable.ch)
	by emailfrontal2.citycable.ch (Postfix) with ESMTPA id E11BD93044D;
	Mon, 19 Mar 2012 22:34:33 +0100 (CET)
Received: from yziquel by seldon with local (Exim 4.77)
	(envelope-from <guillaume.yziquel@citycable.ch>)
	id 1S9kDw-0001NZ-FP; Mon, 19 Mar 2012 22:34:40 +0100
Date: Mon, 19 Mar 2012 22:34:40 +0100
From: Guillaume Yziquel <guillaume.yziquel@citycable.ch>
To: Thomas Gazagnaire <thomas.gazagnaire@gmail.com>
Subject: Re: pattern matching strings with regexes
Message-ID: <20120319213440.GB12296@localhost>
References: <875399E8-5D21-40B2-B71F-54A9DC726A4A@nottingham.ac.uk>
	<B4848A46-39D1-491E-AE5A-5C9DDAAAF01A@gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
In-Reply-To: <B4848A46-39D1-491E-AE5A-5C9DDAAAF01A@gmail.com>
User-Agent: Mutt/1.5.21 (2010-09-15)
Content-Transfer-Encoding: quoted-printable
Cc: Richard Mortier <Richard.Mortier@nottingham.ac.uk>,
	"cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Mon, 19 Mar 2012 21:34:36 -0000
X-Keywords:                  
X-UID: 233
Status: O
Content-Length: 1197
Lines: 26

Le Monday 19 Mar 2012 =E0 22:26:33 (+0100), Thomas Gazagnaire a =E9crit :
> > if not, anyone any experience with http://mjambon.com/micmatch.html
> > (reference manual at http://mjambon.com/mikmatch-manual.html) which
> > looks like it does roughly what i'm talking about...
>=20
> That's indeed to solution I would advise. As far as I remember the
> library is quite good, and I think you can plug quite easily other
> regexp engines (as ocaml-re).=20
>=20
> It's quite difficult to design a good compilation scheme with active
> patterns, so the OCaml approach is to compile optimally static
> patterns and let the complex things be handled by external libraries.
> That's maybe not  not the better user-experience choice, but it keeps
> the language simple and efficient :-)

I'd also advocate mikmatch. It's quite good an honestly perhaps the best
thing around. I've however experienced some difficulties when you've got
too many nestings of mikmatch pattern matching. Likely some name/scope
clashes between generated hidden values.

Not 100% perfect, but it really improves the user experience. In this
context, I really do not mind the PCRE dependency at all.

--=20
     Guillaume Yziquel


From Richard.Mortier@nottingham.ac.uk Mon Mar 19 23:28:33 2012
Received: from ppsw-51.csi.cam.ac.uk ([131.111.8.151])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S9m09-0005zG-Ji (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Mon, 19 Mar 2012 23:28:33 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from thb-mta-19-tx.emailfiltering.com ([194.116.199.150]:40541
	helo=thb-mta-19.emailfiltering.com)
	by ppsw-51.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25)
	with esmtp id 1S9m04-0005uB-Wy (Exim 4.72) for
	cl-mirage@lists.cam.ac.uk
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Mon, 19 Mar 2012 23:28:33 +0000
Received: from smtp1.nottingham.ac.uk ([128.243.44.4])
	by thb-mta-19.emailfiltering.com with emfmta (version 4.8.5.86) by TLS
	id 2351360010 ;94fa74d1dc880810; Mon, 19 Mar 2012 23:27:41 +0000
Received: from uiwexhub01.ad.nottingham.ac.uk ([128.243.15.133])
	by smtp1.nottingham.ac.uk with esmtps (TLSv1:AES128-SHA:128)
	(Exim 4.77) (envelope-from <Richard.Mortier@nottingham.ac.uk>)
	id 1S9lhA-000846-6V; Mon, 19 Mar 2012 23:08:56 +0000
Received: from EXCHANGE1.ad.nottingham.ac.uk ([fe80::7962:f868:e6ee:6267]) by
	UIWEXHUB01.ad.nottingham.ac.uk ([2002:80f3:f85::80f3:f85]) with mapi;
	Mon, 19 Mar 2012 23:08:52 +0000
From: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
To: Haris Rotsos <cr409@cl.cam.ac.uk>, Anil Madhavapeddy <anil@recoil.org>
Date: Mon, 19 Mar 2012 23:08:54 +0000
Subject: ocaml-dns- resolver and client
Thread-Topic: ocaml-dns- resolver and client
Thread-Index: Ac0GJUClgRhtuPr5RgCDT2oDfEYD3Q==
Message-ID: <7AC77867-80B0-41F9-BBAF-871F37382064@nottingham.ac.uk>
Accept-Language: en-US, en-GB
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
acceptlanguage: en-US, en-GB
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: "cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Mon, 19 Mar 2012 23:28:33 -0000
X-Keywords:                  
X-UID: 234
Status: O
Content-Length: 1050
Lines: 25

pull reqs sent- cover both ocaml-dns and ocaml-uri (latter adds a crappy st=
ring_to_ipv4 function to make the odig test client support reverse lookup).

obviously many improvements possible but i think it just about does the bas=
ics.

--=20
Cheers,

R.


=
This message and any attachment are intended solely for the addressee a=
nd may contain confidential information. If you have received this mess=
age in error, please send it back to me, and immediately delete it.   P=
lease do not use, copy or disclose the information contained in this me=
ssage or in any attachment.  Any views or opinions expressed by the aut=
hor of this email do not necessarily reflect the views of the Universit=
y of Nottingham.=0D=0A=0D=0AThis message has been checked for viruses b=
ut the contents of an attachment=0D=0Amay still contain software viruse=
s which could damage your computer system:=0D=0Ayou are advised to perf=
orm your own checks. Email communications with the=0D=0AUniversity of N=
ottingham may be monitored as permitted by UK legislation.=


From anil@recoil.org Tue Mar 20 10:53:49 2012
Received: from ppsw-52.csi.cam.ac.uk ([131.111.8.152])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1S9whJ-0005Be-1h (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Tue, 20 Mar 2012 10:53:49 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from recoil.dh.bytemark.co.uk ([89.16.177.154]:12652
	helo=dark.recoil.org)
	by ppsw-52.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25)
	with smtp id 1S9whH-0001fr-EX (Exim 4.72) for cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Tue, 20 Mar 2012 10:53:48 +0000
Received: (qmail 8800 invoked by uid 634); 20 Mar 2012 10:53:46 -0000
X-Spam-Level: *
X-Spam-Status: No, hits=-1.0 required=5.0
	tests=ALL_TRUSTED
X-Spam-Check-By: dark.recoil.org
Received: from host81-149-102-120.in-addr.btopenworld.com (HELO
	[192.168.0.87]) (81.149.102.120)
	(smtp-auth username remote@recoil.org, mechanism cram-md5)
	by dark.recoil.org (qpsmtpd/0.84) with ESMTPA;
	Tue, 20 Mar 2012 10:53:46 +0000
Subject: Re: ocaml-dns- resolver and client
Mime-Version: 1.0 (Apple Message framework v1257)
Content-Type: text/plain; charset=us-ascii
From: Anil Madhavapeddy <anil@recoil.org>
In-Reply-To: <7AC77867-80B0-41F9-BBAF-871F37382064@nottingham.ac.uk>
Date: Tue, 20 Mar 2012 10:53:42 +0000
Content-Transfer-Encoding: quoted-printable
Message-Id: <376CB18F-8C78-4064-9679-B170D35F78F4@recoil.org>
References: <7AC77867-80B0-41F9-BBAF-871F37382064@nottingham.ac.uk>
To: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
X-Mailer: Apple Mail (2.1257)
X-Virus-Checked: Checked by ClamAV on dark.recoil.org
Cc: Haris Rotsos <cr409@cl.cam.ac.uk>,
	"cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Tue, 20 Mar 2012 10:53:49 -0000
X-Keywords:                  
X-UID: 235
Status: O
Content-Length: 1915
Lines: 59

Thanks Mort, this really plugs the last big 'gap' in the network stack! =
I've pushed
your code with this minor change:

 let lookup_addr s =3D=20
-  lwt ans =3D s |> string_to_ipv4 |> Dns_resolver.gethostbyaddr in
+  lwt ans =3D wrap1 string_to_ipv4 s >>=3D Dns_resolver.gethostbyaddr =
in

Since the string_to_ipv4 function can return an OCaml exception, the =
Lwt.wrap1
function will convert that to the Lwt monad (and then the standard >>=3D =
bind
operator will pass that through to the resolver if an error wasn't =
raised).

I'll take a shot at the conversion to a priority-queue-based timer later =
on
this week, but have to do slides and finish up the ocaml-workflow module=20=

(which has working shared memory communication and a rough FABLE-like =
interface now,=20
hurrah!).

-anil

On 19 Mar 2012, at 23:08, Richard Mortier wrote:

> pull reqs sent- cover both ocaml-dns and ocaml-uri (latter adds a =
crappy string_to_ipv4 function to make the odig test client support =
reverse lookup).
>=20
> obviously many improvements possible but i think it just about does =
the basics.
>=20
> --=20
> Cheers,
>=20
> R.
>=20
>=20
> This message and any attachment are intended solely for the addressee =
and may contain confidential information. If you have received this =
message in error, please send it back to me, and immediately delete it.  =
 Please do not use, copy or disclose the information contained in this =
message or in any attachment.  Any views or opinions expressed by the =
author of this email do not necessarily reflect the views of the =
University of Nottingham.
>=20
> This message has been checked for viruses but the contents of an =
attachment
> may still contain software viruses which could damage your computer =
system:
> you are advised to perform your own checks. Email communications with =
the
> University of Nottingham may be monitored as permitted by UK =
legislation.



From avsm@dark.recoil.org Thu Mar 22 11:32:25 2012
Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1SAgFl-0007Zq-Uc (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <avsm@dark.recoil.org>); Thu, 22 Mar 2012 11:32:25 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from recoil.dh.bytemark.co.uk ([89.16.177.154]:22820
	helo=dark.recoil.org)
	by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25)
	with smtp id 1SAgFl-0007ex-QY (Exim 4.72) for cl-mirage@lists.cam.ac.uk
	(return-path <avsm@dark.recoil.org>); Thu, 22 Mar 2012 11:32:25 +0000
Received: (qmail 31595 invoked by uid 10000); 22 Mar 2012 11:32:25 -0000
Date: Thu, 22 Mar 2012 11:32:25 +0000
From: Anil Madhavapeddy <anil@recoil.org>
To: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
Subject: Re: pattern matching strings with regexes
Message-ID: <20120322113225.GG29912@dark.recoil.org>
References: <875399E8-5D21-40B2-B71F-54A9DC726A4A@nottingham.ac.uk>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <875399E8-5D21-40B2-B71F-54A9DC726A4A@nottingham.ac.uk>
User-Agent: Mutt/1.5.21 (2010-09-15)
Cc: cl-mirage@lists.cam.ac.uk
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Thu, 22 Mar 2012 11:32:26 -0000
X-Keywords:                  
X-UID: 236
Status: O
Content-Length: 1219
Lines: 30

On Mon, Mar 19, 2012 at 09:20:07PM +0000, Richard Mortier wrote:
> i'm getting the vibe off the interwebs that the answer is "no" but i'll
> ask anyway - is there a standard way to do this in ocaml?  something to
> the effect of
> 
> match s with | "[hH]ello world!+" -> do_hello
> 
> ...etc. hopefully you get the idea :)
> 
> would be quite helpful if writing eg., webapps.
> 
> if not, anyone any experience with http://mjambon.com/micmatch.html
> (reference manual at http://mjambon.com/mikmatch-manual.html) which
> looks like it does roughly what i'm talking about...
> 
> (anil- don't worry, i don't intend to take another syntax extension
> dependency in at this stage, i'm just asking :) 

I've just taken a look at Mikmatch, and it looks pretty straightforward to
add an ocaml-re (pure OCaml) version of the extension, and very useful at
that.  It's not on the critical path, so likely sometime in May, but on my
todo list now.

Right now, it has a Str and Pcre backend, both of which are supported by
ocaml-re (as well as globbing and other styles).  We can't really depend
on ocaml-pcre due to all the C dependencies of course.

-- 
Anil Madhavapeddy                                 http://anil.recoil.org


From anil@recoil.org Thu Mar 22 15:30:51 2012
Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1SAjyV-0007nL-47 (Exim 4.70) for
	cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Thu, 22 Mar 2012 15:30:51 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from recoil.dh.bytemark.co.uk ([89.16.177.154]:8246
	helo=dark.recoil.org)
	by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25)
	with smtp id 1SAjyU-0001fQ-Q0 (Exim 4.72) for cl-mirage@lists.cam.ac.uk
	(return-path <anil@recoil.org>); Thu, 22 Mar 2012 15:30:50 +0000
Received: (qmail 430 invoked by uid 634); 22 Mar 2012 15:30:49 -0000
X-Spam-Level: *
X-Spam-Status: No, hits=-1.0 required=5.0
	tests=ALL_TRUSTED
X-Spam-Check-By: dark.recoil.org
Received: from cpc7-cmbg14-2-0-cust238.5-4.cable.virginmedia.com (HELO
	[192.168.1.89]) (86.30.244.239)
	(smtp-auth username remote@recoil.org, mechanism cram-md5)
	by dark.recoil.org (qpsmtpd/0.84) with ESMTPA;
	Thu, 22 Mar 2012 15:30:48 +0000
From: Anil Madhavapeddy <anil@recoil.org>
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Subject: Fwd: [Caml-list] OCaml app for iOS, Schnapsen card game
Date: Thu, 22 Mar 2012 15:30:46 +0000
References: <201203212213.q2LMD7fB022430@pse.psellos.com>
To: "cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>,
	cl-signpost@lists.cam.ac.uk
Message-Id: <558C38F6-CD37-44D7-A37F-778BC07F0A1B@recoil.org>
Mime-Version: 1.0 (Apple Message framework v1257)
X-Mailer: Apple Mail (2.1257)
X-Virus-Checked: Checked by ClamAV on dark.recoil.org
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Thu, 22 Mar 2012 15:30:51 -0000
X-Keywords:                  
X-UID: 237
Status: O
Content-Length: 2194
Lines: 69

If anyone gets a chance, trying this out on iPhone (and Android too) =
would
be most useful. The ARM generator in the native code compiler is very =
good now,
and embedding Signpost+Mirage applications in normal mobile phones would =
be
great!

-anil

Begin forwarded message:

> From: Jeffrey Scofield <jeffsco@psellos.com>
> Subject: [Caml-list] OCaml app for iOS, Schnapsen card game
> Date: 21 March 2012 22:13:07 GMT
> To: caml-list@inria.fr
>=20
> As more proof that you can write real-world iOS apps in OCaml, our =
little
> outfit Psellos has just released a second OCaml app through the App =
Store.
> It plays the classic card games Schnapsen and Sixty-Six.
>=20
> You can find info about the app at our website:
>=20
>    http://psellos.com/
>=20
> We think using OCaml was a real advantage in building the game-playing
> engine.  It also seemed a great fit for the animation subsystem that I
> wrote to make the cards move (immutably).
>=20
> Also, these are great card games.  One of our friends was inspired by
> the app to start up a blog about Schnapsen (also on the website).
>=20
> In addition to the two apps that we sell (for cheap), I've written 5
> apps that show how to code for iOS in OCaml.  The sources for all 5 =
are
> available at our website in the OCaml section
> (http://psellos.com/ocaml/).  A few people have used these examples as
> the basis for their own apps.
>=20
> There's also info on how to cross compile to iOS and to the iOS
> Simulator, how to build the cross compilers we're using, and how to =
use
> OpenGL ES from OCaml.
>=20
> Recently there was a question about updating our tools to work with
> Apple's latest Xcode.  Now that the app is released, I'll be doing =
that
> as soon as I can.
>=20
> I'm trying my best to start a worldwide OCaml-on-iOS craze :-), and
> would be very happy to hear from anyone interested.
>=20
> Regards,
>=20
> Jeffrey Scofield
> Seattle
>=20
> jeffsco@psellos.com
>=20
> --=20
> Caml-list mailing list.  Subscription management and archives:
> https://sympa-roc.inria.fr/wws/info/caml-list
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports: http://caml.inria.fr/bin/caml-bugs
>=20



From Richard.Mortier@nottingham.ac.uk Sat Mar 24 07:06:05 2012
Received: from ppsw-41.csi.cam.ac.uk ([131.111.8.141])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1SBL36-0002g4-Vs (Exim 4.70)
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Sat, 24 Mar 2012 07:06:04 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from thb-mta-19-tx.emailfiltering.com ([194.116.199.150]:39126
	helo=thb-mta-19.emailfiltering.com)
	by ppsw-41.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.146]:25)
	with esmtp id 1SBL31-0001ED-Ra (Exim 4.72)
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Sat, 24 Mar 2012 07:06:04 +0000
Received: from smtp1.nottingham.ac.uk ([128.243.44.4])
	by thb-mta-19.emailfiltering.com with emfmta (version 4.8.5.86) by TLS
	id 2357876154 ;f75386f375af513a; Sat, 24 Mar 2012 07:05:34 +0000
Received: from uiwexhub01.ad.nottingham.ac.uk ([128.243.15.133])
	by smtp1.nottingham.ac.uk with esmtps (TLSv1:AES128-SHA:128)
	(Exim 4.77) (envelope-from <Richard.Mortier@nottingham.ac.uk>)
	id 1SBL2b-0005xD-Rj; Sat, 24 Mar 2012 07:05:33 +0000
Received: from EXCHANGE1.ad.nottingham.ac.uk ([fe80::7962:f868:e6ee:6267]) by
	UIWEXHUB01.ad.nottingham.ac.uk ([2002:80f3:f85::80f3:f85]) with mapi;
	Sat, 24 Mar 2012 07:05:31 +0000
From: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
To: "cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>,
	"cl-signpost@lists.cam.ac.uk" <cl-signpost@lists.cam.ac.uk>
Date: Sat, 24 Mar 2012 07:05:33 +0000
Subject: slideware
Thread-Topic: slideware
Thread-Index: Ac0JjIA4R2knwXYSTJKzuC7I6ngktQ==
Message-ID: <38245539-52DF-4B3A-B7FA-01B928DE9267@nottingham.ac.uk>
Accept-Language: en-US, en-GB
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
acceptlanguage: en-US, en-GB
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Sat, 24 Mar 2012 07:06:05 -0000
X-Keywords:                  
X-UID: 238
Status: O
Content-Length: 1183
Lines: 27

morning all;

wondering if we have any repository for slideware for mirage and/or signpos=
ts?  am off to visit georgia tech today and (as arranged yesterday) it turn=
s out i'll probably be giving talks about both, potentially more broadly th=
an the project specific meeting i anticipated.  so any pre-existing pre-tes=
ted slides would be a considerable help...  :)

--=20
Cheers,

R.


=
This message and any attachment are intended solely for the addressee a=
nd may contain confidential information. If you have received this mess=
age in error, please send it back to me, and immediately delete it.   P=
lease do not use, copy or disclose the information contained in this me=
ssage or in any attachment.  Any views or opinions expressed by the aut=
hor of this email do not necessarily reflect the views of the Universit=
y of Nottingham.=0D=0A=0D=0AThis message has been checked for viruses b=
ut the contents of an attachment=0D=0Amay still contain software viruse=
s which could damage your computer system:=0D=0Ayou are advised to perf=
orm your own checks. Email communications with the=0D=0AUniversity of N=
ottingham may be monitored as permitted by UK legislation.=


From h.rotsos@gmail.com Sat Mar 24 10:40:17 2012
Received: from ppsw-52.csi.cam.ac.uk ([131.111.8.152])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1SBOOP-0005jS-O0 (Exim 4.70)
	(return-path <h.rotsos@gmail.com>); Sat, 24 Mar 2012 10:40:17 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -2.6 from SpamAssassin-3.3.2-1293136 
	* -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/,
	low *      trust
	*      [209.85.217.179 listed in list.dnswl.dnsbl.ja.net]
	* 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail
	provider *       (h.rotsos[at]gmail.com)
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
	*  0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily
	*      valid
	* -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from mail-lb0-f179.google.com ([209.85.217.179]:38679)
	by ppsw-52.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.149]:25)
	with esmtp id 1SBOOO-0003bg-Fl (Exim 4.72)
	(return-path <h.rotsos@gmail.com>); Sat, 24 Mar 2012 10:40:17 +0000
Received: by lbbgn12 with SMTP id gn12so2915863lbb.38
	for <multiple recipients>; Sat, 24 Mar 2012 03:40:16 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.152.147.202 with SMTP id tm10mr12243278lab.49.1332585616377;
	Sat, 24 Mar 2012 03:40:16 -0700 (PDT)
Sender: h.rotsos@gmail.com
Received: by 10.152.129.39 with HTTP; Sat, 24 Mar 2012 03:40:16 -0700 (PDT)
In-Reply-To: <38245539-52DF-4B3A-B7FA-01B928DE9267@nottingham.ac.uk>
References: <38245539-52DF-4B3A-B7FA-01B928DE9267@nottingham.ac.uk>
Date: Sat, 24 Mar 2012 10:40:16 +0000
X-Google-Sender-Auth: RNZVrgkxeOS1JXj3b2BtNw3_3kc
Message-ID: <CALerif7=xjOQ5F0_wLFiS17Grjv+qBpSghBhXK=sa1-DEKE1+A@mail.gmail.com>
Subject: Re: slideware
From: Haris Rotsos <cr409@cl.cam.ac.uk>
To: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Cc: "cl-signpost@lists.cam.ac.uk" <cl-signpost@lists.cam.ac.uk>,
	"cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Sat, 24 Mar 2012 10:40:17 -0000
X-Keywords:                  
X-UID: 239
Status: O
Content-Length: 1710
Lines: 54

Hi mort,

I only had the chance to give a presentation about mirage and openflow
in the netos meeting. you can find the slides at :
https://www.dropbox.com/sh/ep6fskmv25rxrmz/XT26vtmcYy/Cost_performance.ppt.

Have a nice trip.

On 24 March 2012 07:05, Richard Mortier
<Richard.Mortier@nottingham.ac.uk> wrote:
> morning all;
>
> wondering if we have any repository for slideware for mirage and/or signp=
osts? =C2=A0am off to visit georgia tech today and (as arranged yesterday) =
it turns out i'll probably be giving talks about both, potentially more bro=
adly than the project specific meeting i anticipated. =C2=A0so any pre-exis=
ting pre-tested slides would be a considerable help... =C2=A0:)
>
> --
> Cheers,
>
> R.
>
>
> This message and any attachment are intended solely for the addressee and=
 may contain confidential information. If you have received this message in=
 error, please send it back to me, and immediately delete it. =C2=A0 Please=
 do not use, copy or disclose the information contained in this message or =
in any attachment. =C2=A0Any views or opinions expressed by the author of t=
his email do not necessarily reflect the views of the University of Notting=
ham.
>
> This message has been checked for viruses but the contents of an attachme=
nt
> may still contain software viruses which could damage your computer syste=
m:
> you are advised to perform your own checks. Email communications with the
> University of Nottingham may be monitored as permitted by UK legislation.



--=20
Charalampos Rotsos
PhD student
The University of Cambridge
Computer Laboratory
William Gates Building
JJ Thomson Avenue
Cambridge
CB3 0FD

Phone: +44-(0) 1223 767032
Email: cr409@cl.cam.ac.uk


From Richard.Mortier@nottingham.ac.uk Sat Mar 24 23:52:04 2012
Received: from ppsw-51.csi.cam.ac.uk ([131.111.8.151])
	by lists-2.csi.cam.ac.uk (lists.cam.ac.uk [131.111.8.15]:25)
	with esmtp id 1SBake-0004M6-Q7 (Exim 4.70)
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Sat, 24 Mar 2012 23:52:04 +0000
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: score -1.9 from SpamAssassin-3.3.2-1293136 
	* -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
	*      [score: 0.0000]
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from thb-mta-19-tx.emailfiltering.com ([194.116.199.150]:56598
	helo=thb-mta-19.emailfiltering.com)
	by ppsw-51.csi.cam.ac.uk (mx.cam.ac.uk [131.111.8.148]:25)
	with esmtp id 1SBakY-0003mF-YP (Exim 4.72)
	(return-path <Richard.Mortier@nottingham.ac.uk>);
	Sat, 24 Mar 2012 23:52:04 +0000
Received: from smtp2.nottingham.ac.uk ([128.243.44.5])
	by thb-mta-19.emailfiltering.com with emfmta (version 4.8.5.86) by TLS
	id 2358290930 ;154c3f0445487972; Sat, 24 Mar 2012 23:51:06 +0000
Received: from uiwexhub01.ad.nottingham.ac.uk ([128.243.15.133])
	by smtp2.nottingham.ac.uk with esmtps (TLSv1:AES128-SHA:128)
	(Exim 4.77) (envelope-from <Richard.Mortier@nottingham.ac.uk>)
	id 1SBaji-0002QP-Fv; Sat, 24 Mar 2012 23:51:06 +0000
Received: from EXCHANGE1.ad.nottingham.ac.uk ([fe80::7962:f868:e6ee:6267]) by
	UIWEXHUB01.ad.nottingham.ac.uk ([2002:80f3:f85::80f3:f85]) with mapi;
	Sat, 24 Mar 2012 23:51:02 +0000
From: Richard Mortier <Richard.Mortier@nottingham.ac.uk>
To: Haris Rotsos <cr409@cl.cam.ac.uk>
Date: Sat, 24 Mar 2012 23:51:01 +0000
Subject: Re: slideware
Thread-Topic: slideware
Thread-Index: Ac0KGPe5SHh2fQnZS9SV5iSX+YEf/A==
Message-ID: <BB1F8382-0D83-4B85-BDFE-B9DD920A076A@nottingham.ac.uk>
References: <38245539-52DF-4B3A-B7FA-01B928DE9267@nottingham.ac.uk>
	<CALerif7=xjOQ5F0_wLFiS17Grjv+qBpSghBhXK=sa1-DEKE1+A@mail.gmail.com>
In-Reply-To: <CALerif7=xjOQ5F0_wLFiS17Grjv+qBpSghBhXK=sa1-DEKE1+A@mail.gmail.com>
Accept-Language: en-US, en-GB
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
acceptlanguage: en-US, en-GB
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: "cl-signpost@lists.cam.ac.uk" <cl-signpost@lists.cam.ac.uk>,
	"cl-mirage@lists.cam.ac.uk List" <cl-mirage@lists.cam.ac.uk>
X-BeenThere: cl-mirage@lists.cam.ac.uk
X-Mailman-Version: 2.1.8
Precedence: list
List-Id: MirageOS development <cl-mirage.lists.cam.ac.uk>
List-Unsubscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=unsubscribe>
List-Archive: <https://lists.cam.ac.uk/pipermail/cl-mirage>
List-Post: <mailto:cl-mirage@lists.cam.ac.uk>
List-Help: <mailto:cl-mirage-request@lists.cam.ac.uk?subject=help>
List-Subscribe: <https://lists.cam.ac.uk/mailman/listinfo/cl-mirage>,
	<mailto:cl-mirage-request@lists.cam.ac.uk?subject=subscribe>
X-List-Received-Date: Sat, 24 Mar 2012 23:52:05 -0000
X-Keywords:                  
X-UID: 240
Status: O
Content-Length: 1948
Lines: 69

thanks!  probably only have ~20min anyway so will be overview+a few results=
 i guess.

On 24 Mar 2012, at 10:40, Haris Rotsos wrote:

> Hi mort,
>=20
> I only had the chance to give a presentation about mirage and openflow
> in the netos meeting. you can find the slides at :
> https://www.dropbox.com/sh/ep6fskmv25rxrmz/XT26vtmcYy/Cost_performance.pp=
t.
>=20
> Have a nice trip.
>=20
> On 24 March 2012 07:05, Richard Mortier
> <Richard.Mortier@nottingham.ac.uk> wrote:
>> morning all;
>>=20
>> wondering if we have any repository for slideware for mirage and/or sign=
posts?  am off to visit georgia tech today and (as arranged yesterday) it t=
urns out i'll probably be giving talks about both, potentially more broadly=
 than the project specific meeting i anticipated.  so any pre-existing pre-=
tested slides would be a considerable help...  :)
>>=20
>> --
>> Cheers,
>>=20
>> R.
>>=20
>>=20
>> This message and any attachment are intended solely for the addressee an=
d may contain confidential information. If you have received this message i=
n error, please send it back to me, and immediately delete it.   Please do =
not use, copy or disclose the information contained in this message or in a=
ny attachment.  Any views or opinions expressed by the author of this email=
 do not necessarily reflect the views of the University of Nottingham.
>>=20
>> This message has been checked for viruses but the contents of an attachm=
ent
>> may still contain software viruses which could damage your computer syst=
em:
>> you are advised to perform your own checks. Email communications with th=
e
>> University of Nottingham may be monitored as permitted by UK legislation=
.
>=20
>=20
>=20
> --=20
> Charalampos Rotsos
> PhD student
> The University of Cambridge
> Computer Laboratory
> William Gates Building
> JJ Thomson Avenue
> Cambridge
> CB3 0FD
>=20
> Phone: +44-(0) 1223 767032
> Email: cr409@cl.cam.ac.uk
>=20

--=20
Cheers,

R.




