[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Applicative languages? Anyone?
In article <584@zippy.eecs.umich.edu> dwt@zippy.eecs.umich.edu (David West) writes:
>Applicativity has its advantages, but it needs
>1) a more humanly-comprehensible syntax than LISP; Miranda (TM) is excellent
> in this respect, but the (TM) will probably doom it, as apparently was the
> case with COMIT (TM).
I have just recently become interested in functional/applicative
prramming. Having read several essays on Miranda, I am amazed
at the high level that programs can be described in Miranda.
While suffering from some problems (as noted by Dave West),
Miranda seems excellent for simple and not-so-simple programming
jobs.
>2) Some syntactic means for preventing argumentsfrom getting unreadably
> numerous just to pass something down to where it's finally used.
I have seen an extension to prolog for object-oriented
programming that works in much this way. Normally, object state
is represented by a structure which is passed and has fields
(corresponding to instance-vars) bound to new values as the
object changes state. This allows you to backtrack through
object changes, which would be hard to do if we used real
assignment. But passing these objects around is tedious, so
"syntactic sugar" is developped to carry the object state
around. For more info, see University of Oregon Tech Report
-TR-87-09, "Object Oriented Programming with First Order Logic",
by John S. Conery.
>3) a public domain portable optimizing implementation (though all three of
> these attributes together is perhaps too much to hope for.) The thing
> that made Pascal fly was the availability of the Zurich P-compiler
> initially, then Turbo. What the world needs now is GNU Miranda or (ok,
> I'll be more reasonable) GNU ML. (Richard is probably too busy, though...)
> Turbo ML?
Hmmm, not a bad idea. I have just acquired "Implementation of
Functional Programming Languages by Simon L. Peyton Jones, and
am much impressed by the depth/level of the text. Seeing as I
have to do a final thesis/project sometime :-) I might be
tempted to try a hand at an ML interpreter/compiler. I would
like to hear from anyone who is trying/has tried similar
projects.
markv@uoregon.edu \ Mark Terrence VandeWettering
University of Oregon \ ..!tektronix!uoregon!markv
Computer Science Dept. \