Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Is ML a popular programming lang? [Yes, a new academic year has begun]

17 views
Skip to first unread message

Dwight VandenBerghe

unread,
Nov 2, 1998, 3:00:00 AM11/2/98
to
On 30 Oct 1998 16:07:36 GMT, Erik <va...@imailbox.com> wrote:
>Why such a powerful functional language as ML could not get
>popular? Just like Linux?

You have to learn to think differently to write ML code.
That leaves most people behind; they have other things
to do (like earn a living). Such a tragedy; FP is so
beautiful...
Dwight


Erik

unread,
Nov 2, 1998, 3:00:00 AM11/2/98
to
Hi ML fans,

ok, I shouldn't make such a comparsion (Python vs ML
newsgroup).
Anyway, i guess it is quite safe to say ML is mainly used at
academic/research settings. Almost every messages(14 today)
posted here is by someone at university or research centre.

I've installed SML/NJ 110.0.3 on my Linux box (minor tuning
on the installation process is needed) and printed out
Professor Harper's paper "Programming in standard ML" for
reference(my textbook, Programming Languages: Concepts &
Constructs, has 42 pages coverage on ML only). Many people
learn ML from this paper, right?

I like the different mode of thinking in ML programming.
Think different. Apple's slogan? :)

Better start to do my ML assignment on DAG or ...

Thanks

Erik
from Hong Kong


ANOQ of the Sun

unread,
Nov 2, 1998, 3:00:00 AM11/2/98
to
dew wrote:

> "What is a good way to represent graphs in ML?"
> As long as you don't ask for a complete time/space bounds analysis,
> I don't see why that would be inappropriate. Asking, "Does anyone
> have a representation for DAGs and a suite of functions that provide
> X,Y and Z operations over them? Can anyone do this in SML? Please
> post them."...well, that's just laziness...and this isn't
> comp.lang.haskell. :)

If anyone does have suggestions regarding this, I would be very
interested... :)

Cheers
--
val it = ("ÁNOQ of the Sun", "Johnny Andersen",
["an...@vip.cybercity.dk", "an...@berlin-consortium.org",
"an...@diku.dk"], "http://users.cybercity.dk/~ccc25861/")
: cyberspacename * meatspacename * email list * homepage URL


ANOQ of the Sun

unread,
Nov 2, 1998, 3:00:00 AM11/2/98
to
Erik wrote:

> I am somewhat surprised by the small number of messages in
> this newsgroups (only 8 at that moment while my favourite
> but not so well known Python language has more than 300). I
> really doubt if ML is still being used commercially.

Possibly becuase the language has fewer problems...? ;)

> Anyway, this functional programming language seems to be
> very powerful and, above all, I have to learn ML this
> semester.
>
> I am going to install SML/NJ 110 on my Linux box this
> weekend. My assignment is to write ML functions for directed
> acyclic graph. It sounds interesting.

I am trying to use ML commercially. I have done a project
in MoscowML where a had to parse a LightWave3D scene
file (very simple format), then print out a list of all the objects
in that 3D scene, query the user for a name of one of the
objects. Lastly the program made that object the hierarchial
parent of all other objects in the scene and generated the
new LightWave scene file.

The project took 3 hours (I had some ML parsing code lying
around...) including reading the LightWave scene format specs...
I wouldn't want to have done that in, say C++... I didn't charge
money for the project becuase I would like to use the code for
a commercial product (CeX3D, see below) myself, but it was
done for another company.

I'm creating the CeX3D application, which I hope will be commercial.
However I have only just begun the huge task of implementing it....

Now for the interesting part! I want the architecture to be
an acyclic directed graph as in Maya (the latest kick-ass
Hollywood special effects tool...). I am also seriously
considering to make this architecture freeware and just make
the application (all the "plugins") commercial. So if you want
to make directed acycylic graph code, please tell me about
it :)

My quest here is SPEED and that the nodes/connections
should be able to pass around ANY type of data (like a
polygon-mesh, NURBS geometry, shader-info etc etc.)

ANOQ of the Sun

unread,
Nov 2, 1998, 3:00:00 AM11/2/98
to
ANOQ of the Sun wrote:
>dew wrote:
>
>> "What is a good way to represent graphs in ML?"
>> As long as you don't ask for a complete time/space bounds analysis,
>> I don't see why that would be inappropriate. Asking, "Does anyone
>> have a representation for DAGs and a suite of functions that provide
>> X,Y and Z operations over them? Can anyone do this in SML? Please
>> post them."...well, that's just laziness...and this isn't
>> comp.lang.haskell. :)
>
>If anyone does have suggestions regarding this, I would be very
>interested... :)

Ooops... I forgot a few important things:

Uhm, the DAG architecture I'm interested in for 3D would need to
have multiple inputs for each DAG node and also multiple outputs.
The connections between the nodes should be dynamically assignable
at runtime, so that the user can build a 3D scene (DAG) from a GUI...
Each node-type would correspond to a different plugin/feature, such
as a sphere-geometry generator with inputs for radius, sweep,
subdivision etc. or perhaps a matrix-transformation node.

I guess this is what makes this whole thing so complex that I
haven't solved it yet... :)


Cheers
--
val it = ("NOQ of the Sun", "Johnny Andersen",

Albert Y.C. Lai

unread,
Nov 5, 1998, 3:00:00 AM11/5/98
to
Erik <va...@imailbox.com> writes:

> and printed out
> Professor Harper's paper "Programming in standard ML" for
> reference(my textbook, Programming Languages: Concepts &
> Constructs, has 42 pages coverage on ML only). Many people
> learn ML from this paper, right?

I learned ML from both HOL88 (a theorem prover written in ancient ML, and
therefore its manual teaches ancient ML) and Paulson's ML for the
Working Programmer.

Now I don't think I like Paulson's presentation of the language, but I
am extremely fascinated by the ambitious, non-toy coding examples and
projects he uses. Around the end of chapter two you can already do a
complex number class. (Stroustrup's C++ book can only do it one third
into the book.) One third into the book you can do infinite series
and binary trees. (King's and K&R's C books can only do lists and
trees somewhere around the middle.) Two third into the way you can
write a parser and evaluator for expressions (lambda expressions in
this case) --- now Stroustrup's C++ book can do similar things early
on, but which other C/C++ books dare to do it anywhere? And by the end
of the book, you can already write a simple theorem prover, something
absolutely no C/C++ book dare to mention, and something you think you
can barely imagine twenty years after your graduation.

Obviously, Paulson is staying true to the title of his book, or ML is
simply powerful enough for beginners to attempt advanced projects.
And that's an inclusive OR.

> I like the different mode of thinking in ML programming.

The main difference is in the paradigm of functional programming
(which is contrasted to imperative/procedural programming of Algol-60
and descendents). The place of ML in your Principle of Programming
Languages course was taken by Lisp ten years ago; and today some
schools use Scheme instead of ML.

Pattern matching in the arguments is not just found in ML; Prolog has
it much earlier, although in a Principle of Programming Languages
course Prolog is taught mainly for logic programming rather than
pattern matching.

But all of these paradigms, together with imperative programming, are
incorporated into Mathematica. With some work, Mathematica can also
do OOP. Therefore it is my opinion that Mathematica alone should be
the language of choice for teaching Principles of Programming
Languages. :)

> Think different. Apple's slogan? :)

Apple is partly owned by Microsoft or Bill Gates; iMac comes installed
with MSIE. It is not different anymore. For a real difference, you
should think Open Source, GNOME, and, oh, SML/Tk. :) Pizza is a nice
combination of OOP (of Java) and functional programming, so you may
also like to take a look at it.

--
[If you post a response, no need to cc me; if you cc me, please say so.]
"Politics is for the moment. An equation is for eternity." - Albert Einstein


0 new messages