Article View: comp.lang.misc
Article #579Re: Which language to teach first?
From: Dave Berry
Date: Wed, 30 Aug 1989 18:52
Date: Wed, 30 Aug 1989 18:52
43 lines
2891 bytes
2891 bytes
>In article <6264@hubcap.clemson.edu> billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu writes:
>> Quoting David M. Harland (Concurrency and Programming Languages, 1986):
>> The history-sensitivity of the imperative languages contrasts
>> with the total inability of functional systems to handle
>> interactions with the outside world...
In article <9970@phoenix.Princeton.EDU> markv@phoenix.Princeton.EDU (Mark T Vandewettering) writes:
> I disagree totally, as do many others. In order to make
> parallelism work, it is REQUIRED to be implicit. Consider the
I believe that languages based on CCS will be the natural development of
functional languages to include explicit parallelism and communication with
the outside world. Like functional languages they may be reasoned about
straightforwardly; the languages are calculi. They don't use assignment, not
even single-assignment; state is stored as arguments to processes just as state
in sequential languages can be stored as arguments to functions.
Of course programmers will face the same problems of deadlock and scheduling
using these languages as using any other; these problems are part of the
task rather than of the language.
Reference: Robin Milner, "Communication and Concurrency", Prentice Hall,
1989. 0-13-115007-3 Pbk 0-13-114984-9.
The paperback version is 19 pounds.
> The one caveat is the relative lack of a good, public domain
> (or nearly so) implementation of a language like Miranda.
Poly/ML is fairly cheap to academic sites. The licencing arrangments
are being revised at tghe moment, but I assume that this policy will continue.
New Jersey ML will probably be available cheap for academic sites as well.
Edinburgh University distributes a core-language version of ML (i.e. no
modules) for teaching; this is available for the cost of distribution.
I think Hope+ is available fairly cheaply from Imperial College London.
ML is eager evaluation, and Hope+ is applicative order evaluation with lazy
datatypes, so if you want full lazy evaluation these languages aren't suitable.
Dave Berry, Laboratory for Foundations db%lfcs.ed.ac.uk@nsfnet-relay.ac.uk
of Computer Science, Edinburgh Uni. <Atlantic Ocean>!mcvax!ukc!lfcs!db
"Another hope, another dream, another truth, installed by the machine."
Technical Details
Message-ID:
<284@castle.ed.ac.uk>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!watmath!att!dptg!rutgers!cs.utexas.edu!uunet!mcsun!ukc!edcastle!lfcs!dbReferences:
<1304@batserver.cs.uq.oz> <6264@hubcap.clemson.edu> <9970@phoenix.Princeton.EDU>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!watmath!att!dptg!rutgers!cs.utexas.edu!uunet!mcsun!ukc!edcastle!lfcs!db From: db@lfcs.ed.ac.uk (Dave Berry) Newsgroups: comp.lang.misc Subject: Re: Which language to teach first? Message-ID: <284@castle.ed.ac.uk> Date: 30 Aug 89 18:52:16 GMT References: <1304@batserver.cs.uq.oz> <6264@hubcap.clemson.edu> <9970@phoenix.Princeton.EDU> Sender: root@castle.ed.ac.uk Reply-To: db@lfcs.ed.ac.uk (Dave Berry) Organization: Laboratory for the Foundations of Computer Science, Edinburgh U Lines: 43