Artifact 14dcdf4b530703cab37372b2387d04132c20823984266e57a0c1605567a36137:
- File
psl-1983/3-1/comp/big-faslend.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: 1360) [annotate] [blame] [check-ins using] [more...]
- File
psl-1983/comp/big-faslend.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: 1360) [annotate] [blame] [check-ins using]
% BIG-FASLEND.RED - Patch to FASLEND for huge files % % Author: Eric Benson % Symbolic Computation Group % Computer Science Dept. % University of Utah % Date: 7 May 1982 % Copyright (c) 1982 University of Utah % <PSL.COMP>BIG-FASLEND.RED.4, 10-Jun-82 10:39:32, Edit by GRISS % Added InitCodeMax!* for testing % lisp procedure CompileUncompiledExpressions(); <<ErrorPrintF("%n*** Init code length is %w%n", length car UncompiledExpressions!*); CompileInitCode('!*!*Fasl!*!*InitCode!*!*, car UncompiledExpressions!*)>>; FLUID '(InitCodeMax!*); LoadTime <<InitCodeMax!*:=350>>; lisp procedure CompileInitCode(Name, InitCodeList); begin scalar X, Len, LastHalf; return if ILessP(Len := length InitCodeList, InitCodeMax!*) then DfPrintFasl list('de, Name, '(), 'progn . InitCodeList) else << ErrorPrintF( "*** Initcode length %w too large, splitting into smaller pieces", Len); ErrorPrintF("*** Please use smaller files in FASL"); X := PNTH(InitCodeList, IQuotient(Len, 2)); LastHalf := cdr X; Rplacd(X, NIL); % tricky, split the code in 2 X := Intern Concat(ID2String Name, StringGensym()); Flag1(X, 'InternalFunction); % has to be internal to get called! CompileInitCode(X, InitCodeList); CompileInitCode(Name, list X . LastHalf) >>; % call previous end;