module crstart; % CRACK Startup code
% Moved here from crack header module.
% FJW, 15 July 1998
% load_package ezgcd,odesolve,factor,int,algint$
% Do this load_package only at load time, not at compile time,
% otherwise Win32-PSL can run out of memory during compilation:
% apply1('load_package, '(ezgcd odesolve factor int algint))$
packages_to_load ezgcd,odesolve,factor,int,algint$ % only at load time
% The following procedure definition should not really be here, but it
% also should not be in crack.red, which flags setprop lose if
% necessary. This flag must be set before the file defining setprop
% is compiled, so that the lose takes effect at compile time rather
% than load time!
% The following is defined in PSL but not CSL:
symbolic procedure setprop(U, L);
%% Store item L as the property list of U.
%% FJW: Defined (but NOT flagged lose) in PSL only.
%% FJW: A crude implementation for CSL.
%% Note that in CSL flags are properties with value t.
<< for each p in plist U do remprop(U, car p);
for each p in L do put(U, car p, cdr p) >>$
setcrackflags()$
!*fullroots := t$ % FJW: should all be local!
!*dfprint := t$
!*nopowers := t$ % FJW
!*allowdfint := t$ % FJW: moved here from crintfix
endmodule;
end$