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.0 required=5.0 tests=AWL autolearn=disabled version=3.1.3 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 3ADBDBC0C for ; Thu, 25 Jan 2007 15:18:14 +0100 (CET) Received: from ipmail01.adl2.internode.on.net (ipmail01.adl2.internode.on.net [203.16.214.140]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id l0PEIFew016680 for ; Thu, 25 Jan 2007 15:18:16 +0100 Received: from ppp27-234.lns1.syd6.internode.on.net (HELO rosella) ([59.167.27.234]) by ipmail01.adl2.internode.on.net with ESMTP; 26 Jan 2007 00:48:09 +1030 X-IronPort-AV: i="4.13,238,1167571800"; d="scan'208"; a="78691026:sNHT88348085" Subject: Re: [Caml-list] designing Ocaml programs with a graphical modeling language ? From: skaller To: stephane.duprat@atosorigin.com Cc: caml-list@yquem.inria.fr In-Reply-To: <45B88884.4060300@atosorigin.com> References: <45B736BC.9010808@atosorigin.com> <200701241901.37939.jon@ffconsultancy.com> <45B88884.4060300@atosorigin.com> Content-Type: text/plain; charset=utf-8 Date: Fri, 26 Jan 2007 01:18:06 +1100 Message-Id: <1169734687.5714.15.camel@rosella.wigram> Mime-Version: 1.0 X-Mailer: Evolution 2.6.1 Content-Transfer-Encoding: 8bit X-Miltered: at concorde with ID 45B8BC27.002 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; ocaml:01 0100,:01 ocaml:01 abstraction:01 scalable:01 abstraction:01 haskell:01 phane:98 sourceforge:01 wrote:01 caml-list:01 short:01 imperative:01 argument:02 argument:02 On Thu, 2007-01-25 at 11:37 +0100, Stéphane DUPRAT wrote: > > Can you elaborate? > > > To be more precise, I'm searching a modeling language (such as UML for > OO methods) and a tool to design my developments in ocaml. That tool > doesn't need to be written in ocaml. > > As for uml, it seems to be not very convenient for functional languages > (i didn't use oo features of ocaml) and not very popular in fp community. > > After a short search on the web, i didn't find anything for that. The > main argument is that functional languages don't need heavy design > methods based on graphical representations. > As for me, I think that designing with a graphical modeling language > could be profitable. I think part of the argument is: design is basically abstraction. OO does not provide a scalable concept of abstraction, so it uses a distinct language .. this is a serious flaw in OO. Functional languages provide better abstraction with better scalability, so don't need a distinct modelling language. This is not to say it is not worthwhile drawing pictures. Note that ML is a *procedural* programming language not a functional one, and even Haskell can sequence imperative operations like I/O. The traditional graphical design tool here is the flow chart. There are lots of tools than can draw flow charts. There is a formal connection between flow charts and the category theory underlying computing, developed by RFC Walters: see "Categories and Computer Science", ISBN 1 875399 01 1 (but this version is impossible to obtain outside Australia, there's a reprint by another institution). -- John Skaller Felix, successor to C++: http://felix.sf.net