From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=NO_REAL_NAME autolearn=disabled version=3.1.3 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 21E1ABC0A for ; Mon, 8 Jan 2007 19:26:57 +0100 (CET) Received: from webmail3.sd.dreamhost.com (webmail3.sd.dreamhost.com [64.111.100.15]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id l08IQrA4005268 for ; Mon, 8 Jan 2007 19:26:56 +0100 Received: from webmail.fischerventure.com (localhost [127.0.0.1]) by webmail3.sd.dreamhost.com (Postfix) with ESMTP id EB570140E4 for ; Mon, 8 Jan 2007 10:26:51 -0800 (PST) Received: from 151.151.21.104 (SquirrelMail authenticated user robert@fischerventure.com) by webmail.fischerventure.com with HTTP; Mon, 8 Jan 2007 10:26:51 -0800 (PST) Message-ID: <60198.151.151.21.104.1168280811.squirrel@webmail.fischerventure.com> In-Reply-To: <1168209464.8650.36.camel@rosella.wigram> References: <1168193722.6133.38.camel@Blefuscu> <1168209464.8650.36.camel@rosella.wigram> Date: Mon, 8 Jan 2007 10:26:51 -0800 (PST) Subject: Re: [Caml-list] Before teaching OCaml From: robert@fischerventure.com To: "OCaml" User-Agent: SquirrelMail/1.4.9a MIME-Version: 1.0 Content-Type: text/plain;charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Miltered: at concorde with ID 45A28CED.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; ocaml:01 trivial:01 ocaml's:01 algebra:01 functors:01 caml-list:01 define:01 tend:02 graphics:02 functional:02 scope:03 suggestion:03 baby:94 problem:05 problem:05 > I would tend to provide a simple but not trivial problem, > and get them to write it in a familiar procedural style .. then > show how to convert it to a functional style, and what the > advantages are. So you'd want to pick a problem which is > amenable to both kinds of solution. > > [...] > > One possible project is a small interpreter .. it has > plenty of scope for variations, and has the advantage > of being interactive without requiring graphics. > This was actually going to be my suggestion. I'd suggest a very toned-down version of a mathematics interpreter (think of a baby Mathematica). That's the kind of problem that will play well to Ocaml's strengths, and since you're looking at math-oriented problems, it'd be reasonably forward. It'd be really fun to do this post-abstract algebra. Define Rings and that kind of stuff as functors, and then go to town. :-D ~~ Robert Fischer. Fischer Venture Management Corp