Artifact 836d273222d12f31c743885ae335436918395e92a4aabfde3dc30f5e0d3e7be1:
- File
psl-1983/3-1/kernel/eval-when.red
— 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: 1310) [annotate] [blame] [check-ins using] [more...]
- File
psl-1983/kernel/eval-when.red
— 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: 1310) [annotate] [blame] [check-ins using]
% % EVAL-WHEN.RED - Funny business to make things happen at different times % % Author: Eric Benson % Symbolic Computation Group % Computer Science Dept. % University of Utah % Date: 30 August 1981 % Copyright (c) 1981 University of Utah % % Functions flagged IGNORE are evaluated immediately when invoked at the top % level while compiling to a file. Those flagged EVAL are evaled immediately % and also passed to the file. These functions are defined to make those % actions more visible and mnemonic. macro procedure CommentOutCode U; %. Comment out a single expression NIL; lisp procedure CompileTime U; %. Evaluate at compile time only U; % just return the already evaluated argument flag('(CommentOutCode CompileTime), 'IGNORE); % The functions above need only be present at compile time. Those below must % be present at both compile and load time to be effective. lisp procedure BothTimes U; %. Evaluate at compile and load time U; flag('(BothTimes), 'EVAL); lisp procedure LoadTime U; %. Evaluate at load time only U; PutD('StartupTime, 'EXPR, cdr GetD 'LoadTime); % StartupTime is kernel hack RemFlag('(LoadTime), 'IGNORE); % just to be sure it doesn't RemFlag('(LoadTime), 'EVAL); % happen until load time END;