From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id GAA24501; Fri, 19 Jul 2002 06:42:09 +0200 (MET DST) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f 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 GAA24497 for ; Fri, 19 Jul 2002 06:42:08 +0200 (MET DST) Received: from cs.brown.edu (fullabull.cs.brown.edu [128.148.32.100]) by concorde.inria.fr (8.11.1/8.11.1) with ESMTP id g6J4g7125286 for ; Fri, 19 Jul 2002 06:42:07 +0200 (MET DST) Received: from miette (miette.cs.brown.edu [128.148.38.66]) by cs.brown.edu (8.12.0/8.12.0) with ESMTP id g6J4g6Qi009259; Fri, 19 Jul 2002 00:42:06 -0400 (EDT) Received: from er by miette with local (Exim 3.35 #1 (Debian)) id 17VPag-00080F-00; Fri, 19 Jul 2002 00:42:06 -0400 Date: Fri, 19 Jul 2002 00:42:06 -0400 From: Emmanuel Renieris To: Oleg Cc: caml-list@inria.fr Subject: Re: [Caml-list] productivity improvement Message-ID: <20020719044206.GC29721@cs.brown.edu> Reply-To: Emmanuel Renieris Mail-Followup-To: Oleg , caml-list@inria.fr References: <20020716172916.4903.qmail@web10702.mail.yahoo.com> <200207182313.TAA19905@dewberry.cc.columbia.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200207182313.TAA19905@dewberry.cc.columbia.edu> User-Agent: Mutt/1.3.28i Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk On Thu, Jul 18, 2002 at 07:14:06PM -0400, Oleg wrote: > Please give me examples of what's > hard/awkward/impossible in C++, but relatively easy in O'Caml, if any (I have > only finite time, so 50 KLOC Coq is not a good example :) I can tell you what I found problematic with C++ but those would be _my_ problems, not yours. (Remember in the Hitch Hiker's Guide To The Galaxy, where pretending you are somebody else's problem makes you invisible?) Back at the beginning of this thread, you said that you ported some small personal utilities, and that you saw no productivity improvement. You postulated some reasons: 1) You were using the same imperative style 2) your knowledge of O'Caml is rudimental 3) there is no productivity enhancement 4) there is no productivity enhancement the programs you were translating 5) there is no productivity enhancement for small programs in general. Based on your posted C++ code, I will add a sixth one: you know C++ so well that few things seem hard in it. I see two ways to weed through this list: Tell us what _you_ find hard/awkward/impossible in C++. Maybe somebody will be able to point out how they are easier in Ocaml (if indeed they are). Show us some of your ocaml code. Maybe there is some idiom you don't have yet, and that would make a difference. > P.P.S. My primary interest is statistical AI (artificial neural networks). I > haven't found any relevant libraries or applications in SML or O'Caml. That > is a bit discouraging. If the FFI is not enough for you, then this comes into the productivity equation. There is also a section of the humps where you can state your wishes. The language-libraries issue is a chicken and egg problem, but things should get better with time. I'm not so sure that it's possible to reach the size of the C-syntaxed languages, but Python (and, I hear, Perl) did it, so there is a chance. -- Manos ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners