[clean-list] Clean and scientific programming

Siegfried Gonzi siegfried.gonzi@kfunigraz.ac.at
Thu, 30 Aug 2001 13:08:29 +0200


I do most of my visualizations with tools like Yorick (put MATLAB, or
IDL, or... here). They are very powerful for scientific graphics. But it
is hard to do software design with it. In the future I plan to slice my
work: one part is responsible for the graphics and one part is
responsible for programming and one part...

It is a fact that in the community most of the scientists program in
Fortran 90 or the younger guys in C. As we all know C is not a language
it is a desease...

It is also a fact that Clean hasn't attract much people as it should. In
the meantime even Perl has got a library for scientific array and image
processing (a very good repository in general is at:
http://sal.kachinatech.com/A/2/ ). Not to mention Python and the huge
scientific libraries. Nobody know why they can attract so much people
and especially developers from universities.

I would really like to know, whether there are any people out there
which are using Clean instead of Fortran 90 (or
http://www.cs.washington.edu/research/projects/zpl/ ) or C for
scientific computations. I do not mean a fac example or a game libary
(sorry, I know also guys they are playing games on the computer, but I
think it is a wrong sign to promote games on the Clean homepage;
Zoerner's library should be placed instead;I only mean, because...how
will you attract scientists? And there should be also a Fortran 90 to
Clean interface).

I think this can be of interest to know a typical cross-section of the
application fields of Clean. I would be also interested whether you
tried to use Clean but abandoned it for scientific task for special
reasons (interfaces, libraries, open-source,). Especially there are
hardly ever published articles whether there is really a shorter
development cycle as lets say with C or Fortran. In theory everything is
okay but the reality is merely reality. For example people in the Forth
community believe they can show the shortest development and debug time
on earth. But it is also a fact that all the Forth programmers at the
Smithonian Astrophysical Institute have been fired because they were
uncapable of reading the code they had programmed.

Does anybody also have experience with Clean and CommonLisp. In the past
there has been projects which used Lisp for example for:

http://sal.kachinatech.com/D/1/DRACO.html


Why I do not see this in Clean? Why there are not users which group
around such a project? I did a Clean internet search. And my results are
not surprising: you can count on one hand how many pages deal with
Clean.

Or is Clean well established in the private industry? For example,
nobody talks about Smalltalk or Cobol but a big buck of business
applications are written and actively reused in this languages?

You can also contact me off-line (I do not think that the Netherlands
will assault your country based on your critique but people often are
more open in private mails).


Sorry for this rant, but sometimes I feel so lost and really cheated.
Lets take the concrete example Clean what I mean with this. The
functional programming community say that nobody wants to program in a
functional language and that most of the C/C++ programmers are
*ignorant*. The functional programming community then anwers okay, they
are ignorant but we want being a model for them. Clean has been also
that model 10 years ago. Clean started on the Mac and Unix. But now it
is mainly on Windows. This means for me, that this way isn't better than
the C/C++ way. This example is not specifically about the language Clean
itself, it is more about the fact that everybody  makes whatever suits
him best. And why may not the C++ programmer suits his needs?

And I try to promote Macintosh or Unix because not that they are the
best user systems (MacOS sucks completely due to poor memory managment,
Unix/Liux is a horror to use) but I want more diversity (though in the
meantime I am convinced that Windows2000 is more stable than my MacOS 9
and way more user-friendly than Linux). 

And so I do with programming languages. But sometimes I believe not the
C++ programmer is the fool but I am the fool. In Clean I often get the
feeling there is absolutely no feedback, and maybe I am the only person 
who wants to try Clean for scientific computations. I may not imagine
the time which I have invested in Clean (and functional programming) to
convince me that it really suits my needs. But in the meantime I could
have managed my work with C++ or Fortran90 though they are not perfect
but they also do the work. Especially I can read about special
constructs which otherwise would cost me a full 10hour in
trial_and_error_Clean-mode.

Please: what do you use Clean for (I mean real world problems).

S. Gonzi