From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id 03107D45F for ; Fri, 4 Nov 2005 17:15:01 +0100 (CET) Received: from karpinski.uscs.susx.ac.uk (karpinski.uscs.susx.ac.uk [139.184.14.85]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id jA4GF0O7003374 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Fri, 4 Nov 2005 17:15:00 +0100 Received: from cpc1-brig7-3-0-cust179.brig.cable.ntl.com ([82.4.141.179]:40026) by karpinski.uscs.susx.ac.uk with esmtpsa (TLSv1:RC4-MD5:128) (Exim 4.43) id IPFUIC-0004J1-0O for caml-list@yquem.inria.fr; Fri, 04 Nov 2005 16:15:48 +0000 Subject: Re: [Caml-list] what is high-level From: David Teller To: OCaml In-Reply-To: <436B871A.40906@synopsys.com> References: <200511031726.59561.jon@ffconsultancy.com> <1131045878.4327.94.camel@localhost.localdomain> <1131071464.10871.44.camel@rosella> <200511041443.15429.fmonnier@linux-nantes.fr.eu.org> <1131118091.6558.7.camel@titania> <436B871A.40906@synopsys.com> Content-Type: text/plain; charset=UTF-8 Date: Fri, 04 Nov 2005 16:14:58 +0000 Message-Id: <1131120898.6558.15.camel@titania> Mime-Version: 1.0 X-Mailer: Evolution 2.2.3 Content-Transfer-Encoding: quoted-printable X-Miltered: at concorde with ID 436B8904.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 high-level:01 ens-lyon:01 ocaml:01 haskell:01 ocaml:01 idioms:01 iirc:01 cheers:01 boo:98 duck:98 duck:98 ...:98 wrote:01 polymorphic:01 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.3 Le vendredi 04 novembre 2005 =C3=A0 11:06 -0500, Alan Falloon a =C3=A9crit = :=20 > David Teller wrote: >=20 > >Still, in OCaml/Haskell/ML, you do need some understanding of the type > >system, which is typically not necessary in other programming languages. >=20 > To write software you need to have some notion of types. By that I mean=20 > that you need an understanding of what values a certain operation can=20 > produce. Sure. But in Python/Boo, as you mention, you have duck typing. In my books, that makes it easier to learn Python than OCaml, because that's one less thing you need to know before starting your first program. Of course, in OCaml, you have "static duck typing" for objects, but that's a different issue. > I think the biggest barrier is the language. It took me forever to=20 > figure out what a 'row variable' was.=20 Er... what is a row variable ? :) Is that a polymorphic variant ? > What we really need is a concept map from the popular languages (C, C++,=20 > Java, Python, Perl) to OCaml. Show common idioms in those languages and=20 > how they look in OCaml, and if there is a better way in OCaml then show=20 > that too. It might not make a good Wikipedia article, but it is the sort=20 > of project well suited to a Wiki. Is there an OCaml Wiki? Iirc, there's an OCaml Wikibook on the Wikipedia. Cheers, David >=20 --=20 Read, Write, and Publish Standard eBooks Free, Open Software, Open Standards and multi-platform The OpenBerg project http://www.openberg.org