12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- %
- % AUTOLOAD.RED - Autoloading entry stubs
- %
- % Author: Eric Benson
- % Symbolic Computation Group
- % Computer Science Dept.
- % University of Utah
- % Date: 25 March 1982
- % Copyright (c) 1982 University of Utah
- %
- % <PSL.KERNEL>AUTOLOAD.RED.3, 17-Sep-82 16:35:02, Edit by BENSON
- % Changed PrettyPrint to use PrettyPrint, not Pretty
- CompileTime <<
- macro procedure DefAutoload U;
- %
- % (DefAutoload name), (DefAutoload name loadname),
- % (DefAutoload name loadname fntype), or
- % (DefAutoload name loadname fntype numargs)
- %
- % Default is 1 Arg EXPR in module of same name
- %
- begin scalar Name, NumArgs, LoadName, FnType;
- U := rest U;
- Name := first U;
- U := rest U;
- if not null U then
- << LoadName := first U;
- U :=rest U >>
- else LoadName := Name;
- if EqCar(Name, 'QUOTE) then Name := second Name;
- if EqCar(LoadName, 'QUOTE) then LoadName := second LoadName;
- if not null U then
- << FnType := first U;
- U := rest U >>
- else FnType := 'EXPR;
- if not null U then
- NumArgs := first U
- else NumArgs := 1;
- NumArgs := MakeArgList NumArgs;
- return list('PutD, MkQuote Name,
- MkQuote FnType,
- list('function, list('lambda, NumArgs,
- list('load, LoadName),
- list('Apply, MkQuote Name,
- 'list . NumArgs))));
- end;
- lisp procedure MakeArgList N;
- GetV('[() (X1) (X1 X2) (X1 X2 X3) (X1 X2 X3 X4) (X1 X2 X3 X4 X5)],
- N);
- >>;
- DefAutoload PrettyPrint;
- DefAutoload(DefStruct, DefStruct, FEXPR);
- DefAutoload(Step);
- DefAutoload Mini;
- DefAutoload('Help, 'Help, FEXPR);
- DefAutoload(Emode, Emode, EXPR, 0);
- DefAutoload(Invoke, Mini);
- PUT('CREF ,'SIMPFG ,'((T (CREFON)) (NIL (CREFOFF))));
- DefAutoload(CrefOn, RCref, EXPR, 0);
- put('Syslisp,
- 'SimpFg,
- '((T (load Syslisp))));
- DefAutoload(CompD, Compiler, EXPR, 3);
- DefAutoload(FaslOUT, Compiler);
- if_system(Tops20, <<
- DefAutoload(Bug, Bug, EXPR, 0);
- DefAutoload(MM, Exec, EXPR, 0);
- DefAutoload(Exec, Exec, EXPR, 0);
- >>);
- END;
|