Version française
Home     About     Download     Resources     Contact us    
Browse thread
designing Ocaml programs with a graphical modeling language ?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: skaller <skaller@u...>
Subject: Re: [Caml-list] designing Ocaml programs with a graphical modeling language ?
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 <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net