Path: utzoo!attcan2!uunet!husc6!bloom-beacon!tut.cis.ohio-state.edu!mandrill!gatech!hubcap!mcvax!cernvax!hjm
From: mcvax!cernvax!hjm@uunet.UU.NET (hjm)
Newsgroups: comp.parallel
Subject: Re: parallel numerical algorithms
Message-ID: <1797@hubcap.UUCP>
Date: 1 Jun 88 20:26:58 GMT
Sender: fpst@hubcap.UUCP
Lines: 20
Approved: parallel@hubcap.clemson.edu

In article <1772@hubcap.UUCP> noao!mcdsun!asuvax!asuvax!nelan@HANDIES.UCAR.EDU (George Nelan) writes:
>
>I guess no side-effects => purely functional programs, huh?
>

There is one major problem with this: no side-effects => no I/O, which is a
fairly useful side-effect of most computation.  This is not strictly true, but
for the sequential type of I/O that we're all accustomed to doing there is
state transmitted between statements in terms of the I/O being performed.  For
example, a function such as read_next_input_value(stdin) will return different
things on different calls, and so is strictly not a function.  OK, a bodge can
be performed so that a state variable is added so that referential transparency
is preserved, but just try passing the entire filing system of your machine as
an argument to every function that does anything to any file!  Do that and we'llall need a massively parallel machine just for word processing.

Having said all that, I like functional languages, especially since they can be
implemented in parallel cleanly.  It's just a pity that the machine has to talk
to the outside world ...

	Hubert Matthews