From: rob@pact.nl (Rob Kurver)
Newsgroups: comp.sys.transputer
Subject: Re: IS Occam3 recursive?
Date: 18 Nov 92 22:06:51 GMT
Organization: PACT, Delft, The Netherlands

In <1992Nov18.130407.12799@titan.inmos.co.uk> steved@lion.inmos.co.uk (Stephen Doyle) writes:

>In article <rob.722034771@dutncp8> rob@pact.nl (Rob Kurver) writes:

>>
>>The CSP paradigm as supported by Occam and PACT Parallel C is a very
>>powerful one, and is especially interesting with the support provided
>>by the transputer.  
>>
>>Cheers. - Rob
>>

>Rob, you seem to have forgotten about INMOS ANSI C providing the same sort of
>CSP paradigm as your own, this obviously slipped your mind :-). I guess the 
>difference boils down to whether you want an ANSI C validated compiler with 
>functional additions for parallelism and communications or an ANSI C compiler 
>with non-ANSI language additions for the same.

Steve, you seem to have forgotten about PACT Parallel C providing the same
sort of functional additions as your own, this obviously slipped your
mind :-).  It is my humble opinion that the CSP paradigm really should be
supported by language constructs.  Yes, use of the C language constructs
makes for a not strictly conforming program, so you'd better not use them
if you intend to port your code to a non-transputer.  Better not use
Occam in this case, either... :-)  The language constructs were added to
PACT Parallel C in an ANSI conforming manner - if you don't use them, you
have a fully validated ANSI C compiler.  (Please reply by email if you're
interested in the details of this.)

I guess the difference boils down to whether you want an ANSI C validated
compiler with functional additions for parallelism and communications or
an ANSI C validated compiler with the same functional additions for
parallelism and communications, with language constructs thrown in as
well.

>                                               I would argue (from customer 
>feedback) that OCCAM tends to be used along with INMOS ANSI C as this 
>provides you with a flexible environment for parallel/comms/sequential 
>programming with excellent diagnostics at compile and run time.

We support mixing of Occam and PACT Parallel C object modules, for the
exact same reasons Inmos do.  No argument there.  Although customer
feedback indicates people eventually forget about Occam as they find
they can do everything they want in PACT Parallel C.

>Just to cloud the issue once more INMOS' soon to be shipping new optimising C 
>compiler has a specific optimisation for tail call recursion i.e.

We decided against tail recursion optimization as it really doesn't improve
performance very much.  Of course, we continue to add optimizations and
improve our product as well, to make sure PACT Parallel C stays faster.
I've seen benchmark results of the beta version of your new optimizing C
compiler, and was relieved (although not surprised) to see PACT Parallel
C is still faster.

>Steve

Rob

P.S.: How come we don't here from Kirk Bailey about this recurring
      subject?  Are you still with us, Kirk?

--
     PACT                   Rob Kurver
    Foulkeslaan 87         rob@pact.nl
   2625 RB Delft     ph: +31 15 616864 
  The Netherlands   fax: +31 15 610032