Artifact 4549c76bd3560fbe8b3fe720dd90aeefad99a0dbcea0b304492e4f57601d9085:
- File
perq-pascal-lisp-project/pasn.pas
— part of check-in
[eb17ceb7f6]
at
2020-04-21 19:40:01
on branch master
— Add Reduce 3.0 to the historical section of the archive, and some more
files relating to version sof PSL from the early 1980s. Thanks are due to
Paul McJones and Nelson Beebe for these, as well as to all the original
authors.git-svn-id: https://svn.code.sf.net/p/reduce-algebra/code/historical@5328 2bfe0521-f11c-4a00-b80e-6202646ff360 (user: arthurcnorman@users.sourceforge.net, size: 1381) [annotate] [blame] [check-ins using] [more...]
(*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % PASCAL BASED MINI-LISP % % File: PASN.RED - Trailer File % ChangeDate: 12:26pm Saturday, 18 July 1981 % By: M. L. Griss % Change to add Features for Schlumberger Demo % Add Hooks for CATCH/THROW % % All RIGHTS RESERVED % COPYRIGHT (C) - 1981 - M. L. GRISS % Computer Science Department % University of Utah % % Do Not distribute with out written consent of M. L. Griss % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*) (* pasN.PAS ---- the last file to be appended, close CATCH, do init *) BEGIN (* Body of Catch *) IF initphase=0 THEN (* Kludge to get into scope of CATCH *) BEGIN init; initphase := 1; firstp; END ELSE BEGIN idspace[xthrowing].val := nilref; catch_stk:=st; (* Capture Stack *) catch_bstk:=idspace[xbstack].val; (* Capture Bstack *) xeval; 9999: (* Return Point *) IF idspace[xthrowing].val <> nilref THEN BEGIN st:=catch_stk; r[2]:=catch_bstk; xunbindto; (* return value, old stack *) END; END END (* catch *); BEGIN (* Top Level *) initphase := 0; r[1] := 0; Xcatch; writeln(tty,'halt');break(tty); end.