[Oberon] Where's Coco's 'hello world' ?

John Drake jmdrake_98 at yahoo.com
Thu Jul 31 19:18:31 MEST 2008

Coco.Report.ps is an Adobe Postscript file.  There is a free Postscript viewer for Linux
called Ghostscript.  You can find a more detailed user manual in PDF format here:


----- Original Message ----
From: Chris Glur <easlab at absamail.co.za>
To: oberon at lists.inf.ethz.ch
Cc: crglur at gmail.com
Sent: Thursday, July 31, 2008 9:55:52 AM
Subject: [Oberon] Where's Coco's 'hello world' ?

My newest version of N-O is Linux v2.4.3 -- no too old --
and shows:
/home/oberon/docu/Coco.Report.ps   07.02.2000 18:47:29  199238
where the *.ps file shows '%!PS-Adobe-2.0'.

I've never been able to view this !PS-Adobe-2.0' thing, and I guess
others have also wasted a lot of effort in trying ?!

After great efforts I got a viewable version from Linz > ftp.
I imagine a possible 'hello world' minimal test, could be

<Integer>            <-- store/push integer

     { ( "+"            <-- Operator :="+"
       | "-" )           <-- Operator :="-"  
<Integer>          <-- Get Int2; Print(integer, Operator, Int2)
where the RHS semantic/actions are commands exported from
specially built modules, which in the example/s are CR*.* .

Apparently the components needed are:
* syntax in EBNF
* semantics/action matching corresponding tokens/terminals,
in format: <SyntaxToken>  (. <Call to actionCommand/s> .)
* Module/s to 'do' required actions.

>From the big 1993 CR.ATG example file, I can't see how to
structure a minimalist test.

Can anyone help/advise ?
Can we put a gentle HOW2 on Edgar's wiki for others to test/use ?

---------- RE: PIC (was Re. Staapl
>>OTOH I'm confused that he writes: ----------
>> Conditional statements have the form shown at the left
>> and explained in terms of conventional notation to
>> the right.
>> [cond -> StatSeq]               IF cond THEN Statseq END

RE: PIC (was Re. Staapl, Joerg wrote:
> I just browsed through Wirth's papers:
> 1) http://www.inf.ethz.ch/personal/wirth/Articles/Miscellaneous/PICL.pdf
> 2)/Miscellaneous/PICLcompiler.pdf
> The short syntax "[ Cond -> StatSeq ]" mentioned in 2) was
> eventually replaced by the long syntax "IF Cond THEN StatSeq END".
> But even in 1) you find small "left overs" of this syntax:
> * In 1) chap 1 you'll find "symbol = + | - ... | ->". The syntactic
>   token "->" is foreseen.
> * In chapter 5, the "->" is used in "GuardedStat = Condition -> StatSeq"
>   But GuardedStat is not used.
> The two papers are not consistent and just not complete (yet!).
> They seem to be in "draft" state.

Yes ! They're dated 2008.
I hope his PICL is available.
The old chips are still available.
It's strange that/if Prof Wirth retired long ago, he's still designing
teaching projects for ETHZ.
I wonder if/how I could join the project ?


== Chris Glur.

Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems


More information about the Oberon mailing list