Newsgroups: comp.sys.transputer
From: dbc@ecs.soton.ac.uk (Bryan Carpenter)
Subject: Re: OCCAM3 (was :- Revision of occam 2 Reference Manual)
Organization: Electronics and Computer Science, University of Southampton
Date: 15 Aug 94 09:09:36 GMT
Message-ID: <dbc.776941776@caesar>

In <JBS.94Aug13134411@client41.comlab> jbs@client41.comlab (Bryan Scattergood) writes:
>> [...]
>> 
>> This reminds me another question. Why is it a implementation restriction
>>  if you use a PAR construct inside a FUNCTION???
>> 
>> Kang Hsin Lu

>I've always thought that the reason for this was fairly simple: functions
>should be deterministic.  If you allow PAR inside a function (or indeed
>any VALOF) then it may not be deterministic any more and lots of the
>nice rewrite rules for occam stop working.

Well, I can write a deterministic function involving PAR (easily), and
I can also do lots of stupid things without using PAR (even more
easily).  In practise I can even make a non-deterministic function
without using PAR, by reading an uninitialised variable.

Which rewrite rules stop working, out of interest?

>	Bryan Scattergood

Bryan


