Artifact 3c1b57b11d9f062fb11160392d75d2ac436b0b477c5e0b95b7a1b5fbacbe5638:
- File
psl-1983/emode/envsel.sl
— 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: 932) [annotate] [blame] [check-ins using] [more...]
% % ENVSEL.SL - Utilities for switching between "environments". % % Author: William F. Galway % Symbolic Computation Group % Computer Science Dept. % University of Utah % Date: 8 June 1982 % Copyright (c) 1982 University of Utah % % Utilities for switching between environments in EMODE. Both buffers and % windows are examples of environments. Currently an environment is just % an association list of (name . value)'s. % Store variable bindings in association list. (DE SaveEnv (env) (progn (for (in binding-pair env) % Replace the cdr with the value of the car. (do (RPLACD binding-pair (eval (car binding-pair))))) % Return the updated environment. env)) % Establish ("restore") the bindings stored in association list "env" (DE RestoreEnv (env) (for (in binding-pair env) (do (set (car binding-pair) (cdr binding-pair)))))