From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 807C1BC2F for ; Thu, 25 Nov 2004 13:29:08 +0100 (CET) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id iAPCT71T025452 for ; Thu, 25 Nov 2004 13:29:07 +0100 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id NAA32663 for ; Thu, 25 Nov 2004 13:29:07 +0100 (MET) Received: from kongzhong.com ([61.135.154.8]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id iAPCT2bZ025434 (version=TLSv1/SSLv3 cipher=EDH-RSA-DES-CBC3-SHA bits=168 verify=NO) for ; Thu, 25 Nov 2004 13:29:06 +0100 Message-Id: <200411251229.iAPCT2bZ025434@concorde.inria.fr> Received: (qmail 29881 invoked by uid 0); 25 Nov 2004 20:33:41 +0800 Received: from unknown (HELO chenyang) (221.216.167.104) by mail1.kongzhong.com with SMTP; 25 Nov 2004 20:33:41 +0800 From: "chen yang" To: , Subject: RE: [Caml-list] Experiences with learning OCaml? Date: Thu, 25 Nov 2004 20:28:45 +0800 X-Mailer: Microsoft Office Outlook, Build 11.0.6353 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 In-Reply-To: <3033.66.167.163.102.1101382830.squirrel@acs-webmail.ucsd.edu> Thread-Index: AcTS5KoEfwwPKXqjTFaAiHt8QT3r/QABYZEg X-Miltered: at concorde with ID 41A5D013.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 41A5D00E.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 ocaml:01 ucsd:01 caml-list:01 ocaml:01 parentheses:01 haskell:01 binary:01 oreilly-book:01 syntax:01 25,:98 lambda:01 suited:01 lisp:01 checking:01 X-Spam-Checker-Version: SpamAssassin 3.0.0 (2004-09-13) on yquem.inria.fr X-Spam-Status: No, score=0.0 required=5.0 tests=MSGID_FROM_MTA_HEADER autolearn=disabled version=3.0.0 X-Spam-Level: > -----Original Message----- > From: caml-list-admin@yquem.inria.fr > [mailto:caml-list-admin@yquem.inria.fr] On Behalf Of whenning@ucsd.edu > Sent: Thursday, November 25, 2004 7:41 PM > To: caml-list@inria.fr > Subject: [Caml-list] Experiences with learning OCaml? > > Hi, > > I'm an undergraduate student studying computer science. My > course assignments generally use C, C++, or Java, and I find > myself pining for something more elegant. That is, I'd like > to teach myself a functional programming language of some > kind. I don't think I like all the parentheses in Lisp. But I > was very impressed by a Haskell implementation of the usual > quicksort algorithm which was very concise -- only 5 lines or > so. However OCaml seems to have a larger community and has a > reputation for fast executation times, so that seems like a > better fit. > > The academic term at my university is ending soon and I'll > have a few weeks of free time on my hands -- I was thinking > of checking out a suitable text on some functional > programming language from the library and working through some of it. > > Would doing this be difficult if one were sufficiently > motivated? I sort of did something similar with C++ a while > ago with some amount of success. > > Although I've of course Googled around for potential books to > select, are there any ones particularly suited for someone in > my position? > Firstly, I suggest that you should know some basic theory of lambda culculus, which definitely help you understand functional programming better. Then you can write some basic algorithms, such as sorting, binary tree, etc. Here is an good book, http://caml.inria.fr/oreilly-book/ , or you can begin with more simple one, http://www.cs.caltech.edu/courses/cs134/cs134b/book.pdf > Finally, although OCaml looks interesting, would some other > functional language be better for someone new to functional > programming? If so, which? I ask because I don't know anyone > who uses functional languages or even knows how to use one. > Ocaml will satisfy you. Scheme is another good choice, with its simple and grace syntax. -chen > Thanks. > > -Warren >