From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 8A4C87EE80 for ; Mon, 18 Mar 2013 15:07:31 +0100 (CET) Received-SPF: Neutral (mail2-smtp-roc.national.inria.fr: domain of simon.cruanes.2007@m4x.org does not assert whether or not 129.104.30.34 is permitted sender) identity=pra; client-ip=129.104.30.34; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="SRS0=iY54=NG=m4x.org=simon.cruanes.2007@bounces.m4x.org"; x-sender="simon.cruanes.2007@m4x.org"; x-conformance=sidf_compatible; x-record-type="spf2.0" Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of SRS0=iY54=NG=m4x.org=simon.cruanes.2007@bounces.m4x.org designates 129.104.30.34 as permitted sender) identity=mailfrom; client-ip=129.104.30.34; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="SRS0=iY54=NG=m4x.org=simon.cruanes.2007@bounces.m4x.org"; x-sender="SRS0=iY54=NG=m4x.org=simon.cruanes.2007@bounces.m4x.org"; x-conformance=sidf_compatible; x-record-type="spf2.0" Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of postmaster@mx1.polytechnique.org designates 129.104.30.34 as permitted sender) identity=helo; client-ip=129.104.30.34; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="SRS0=iY54=NG=m4x.org=simon.cruanes.2007@bounces.m4x.org"; x-sender="postmaster@mx1.polytechnique.org"; x-conformance=sidf_compatible; x-record-type="v=spf1" X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AjcDAKIeR1GBaB4igWdsb2JhbABDxm8WDgEBFiYogiQBAQVyFwsYCRYPCQMCAQIBDzYTBgIBARKHbAMPuBkNiVuMTIEDgWODKgOUfo1IiCU X-IPAS-Result: AjcDAKIeR1GBaB4igWdsb2JhbABDxm8WDgEBFiYogiQBAQVyFwsYCRYPCQMCAQIBDzYTBgIBARKHbAMPuBkNiVuMTIEDgWODKgOUfo1IiCU X-IronPort-AV: E=Sophos;i="4.84,865,1355094000"; d="scan'208";a="8131032" Received: from mx1.polytechnique.org ([129.104.30.34]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/ADH-AES256-SHA; 18 Mar 2013 15:07:31 +0100 Received: from emmental.inria.fr (emmental.inria.fr [128.93.0.14]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ssl.polytechnique.org (Postfix) with ESMTPSA id 64B1B140CD3C2 for ; Mon, 18 Mar 2013 15:07:30 +0100 (CET) Message-ID: <51471FA2.6050602@m4x.org> Date: Mon, 18 Mar 2013 15:07:30 +0100 From: Simon Cruanes User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130311 Thunderbird/17.0.4 MIME-Version: 1.0 To: caml-list@inria.fr References: <5143510E.2000009@recherche.enac.fr> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-AV-Checked: ClamAV using ClamSMTP at svoboda.polytechnique.org (Mon Mar 18 15:07:30 2013 +0100 (CET)) X-Spam-Flag: No, tests=bogofilter, spamicity=0.020007, queueID=7AFAF140CD3C8 X-Org-Mail: simon.cruanes.2007@polytechnique.org Subject: Re: [Caml-list] Use of OCaml in universities and engineering schools Wouldn't promoting the use of an extended standard library, like Batteries or Core, in addition to a friendly toplevel such as utop help making the language nicer to beginners? Opam makes it easier to use them; the biggest source of complexity from there is imho how to build programs (which build system to chose, how to have it use the libraries with findlib, etc.). All this is very easy and natural in python: the standard library is big, you can write programs with networking, http, serialization, databases very easily, there is no build system (nor 'annoying' typing that prevents from writing `1 + 2.0 < 3L`). Ipython can also be used for the 'nice toplevel' part. This is also partly true for universities that use Java, since IDEs like eclipse provide autocompletion and hide the build system away... Even `ghc --make` and ghci are much easier than ocamlbuild and ocaml's toplevel (which doesn't even have readline). So I think this explains the high threshold for starting with OCaml. Simon On 03/18/2013 03:00 PM, Yaron Minsky wrote: > I know of few places in the US that teach Haskell in the intro > sequence. The main concern, I think, is that teaching imperative > programming in Haskell requires too much sophistication. > > That said, I think there are a decent number of places in Europe that > do teach Haskell in the intro sequence, so YMMV. > > My sense is that in the US, ML has quite a good spot relative to other > languages when it comes to University teaching. The primary languages > people teach with in elite US institutions are, I think: > > - Java > - Python > - C > - OCaml/SML > - Scheme > > With Java and Python having the lion's share. C and OCaml/SML are > most often taught as part of the "advanced" intro class. > > I think this is a real opportunity for OCaml. If we can make OCaml > much easier to use for newbies who want to do something outside of > class, I think it's a real chance to reach a wider audience. OPAM > gets us a chunk of the way, but there's more work to do beyond that. > > y > > On Sun, Mar 17, 2013 at 5:29 PM, Lukasz Stafiniak wrote: >> Evolution isn't about how much you achieve but about how well you compete. >> How do we stand in relation to Haskell in education? Or is your worry solely >> about giving ground to Python? >> >