[TUHS] Unix stories, Stephen Bourne and IF-FI in C code
Adam Sampson
ats at offog.org
Mon Jan 9 09:14:17 AEST 2017
"Walter F.J. Mueller" <w.f.j.mueller at retro11.de> writes:
> [...] to enjoy C with an Algol-look.
For those who enjoy Bournegol, can I also recommend the source code to
David Turner's KRC, which was ported from (EMAS) BCPL to C using a
similar approach. A sample from main.c:
STATIC VOID
DISPLAYCOM()
{ TEST HAVEID()
THEN TEST HAVE(EOL)
THEN DISPLAY(THE_ID,TRUE,FALSE); OR
TEST HAVE((TOKEN)DOTDOT_SY)
THEN { ATOM A = THE_ID; LIST X=NIL;
ATOM B = HAVE(EOL) ? (ATOM)EOL :> // BUG?
HAVEID() && HAVE(EOL) ? THE_ID :
0;
TEST B==0 THEN SYNTAX();
OR X=EXTRACT(A,B);
UNTIL X==NIL
DO { DISPLAY((ATOM)HD(X),FALSE,FALSE);
X=TL(X); } } //could insert extra line here between groups
OR SYNTAX();
OR SYNTAX();
}
http://krc-lang.org/
--
Adam Sampson <ats at offog.org> <http://offog.org/>
More information about the TUHS
mailing list