File: Weave.mod
Copyright © 1986 by Xerox Corporation. All rights reserved.
Last Changed by Pavel on September 13, 1985 1:45:35 pm PDT
Doug Wyatt, September 23, 1986 1:27:30 pm PDT
(configuration weave(basic←time, commander, convert, f←s, i←o, rope, safe←storage, unsafe←storage);
definitions pascal�sic; external;
definitions pascal←wizard𡤏iles; external;
program pascal�sic←impl; external;
program pascal←wizard𡤏iles←impl; external;
program no←prog; trash;
definitions weave←vars(pascal�sic*, pascal←wizard𡤏iles*); forward;
definitions weave←procs(pascal�sic*, pascal←wizard𡤏iles*, weave←vars*); forward;
definitions weave←proc𡤊rray.hint$(pascal�sic*, pascal←wizard𡤏iles*, weave←procs*, weave←vars); forward;
program weave←vars←impl1(pascal�sic, pascal←wizard𡤏iles*, weave←vars*); forward;
program weave←vars←impl2(pascal�sic, pascal←wizard𡤏iles*, weave←vars*); forward;
program weave←init(pascal�sic, pascal←wizard𡤏iles, weave←procs, weave←vars); forward;
program weave←id(pascal�sic, pascal←wizard𡤏iles, weave←procs, weave←proc𡤊rray, weave←vars); forward;
program weave←input(pascal�sic*, pascal←wizard𡤏iles, weave←procs, weave←vars); forward;
program weave𡤌ode(pascal�sic*, pascal←wizard𡤏iles, weave←procs, weave←vars); forward;
program weave←xref(pascal�sic*, pascal←wizard𡤏iles, weave←procs, weave←vars); forward;
program weave←low(pascal�sic, pascal←wizard𡤏iles, weave←procs*, weave←proc𡤊rray, weave←vars); forward;
program weave←parse1(pascal�sic*, pascal←wizard𡤏iles, weave←procs, weave←vars); forward;
program weave←parse2(pascal�sic*, pascal←wizard𡤏iles, weave←procs, weave←vars); forward;
program weave←output(pascal�sic, pascal←wizard𡤏iles, weave←procs, weave←proc𡤊rray, weave←vars); forward;
program weave←phase←i(pascal�sic*, pascal←wizard𡤏iles, weave←procs, weave←vars); forward;
program weave←phase←i←i(pascal�sic*, pascal←wizard𡤏iles, weave←procs, weave←vars); forward;
program weave←phase←i←i←i(pascal�sic, pascal←wizard𡤏iles, weave←procs, weave←vars, weave←proc𡤊rray); forward;
program weave←proc𡤊rray←impl.hint$(pascal�sic, weave←vars); forward;
program weave𡤎xternals←impl.hint$(pascal�sic, pascal←wizard𡤏iles, weave←procs, weave←vars); forward;
program weave←impl(pascal�sic, pascal←wizard𡤏iles, weave←procs, weave←vars); forward;
begin
-- weave←vars←impl1 has the first 16 vars, because we can't export them all at once....
weave←vars, weave←vars←impl1 := history, xord, xchr, term←out, web𡤏ile, change𡤏ile, tex𡤏ile, buffer, phase←one, phase←three, byte←start, link, ilk, xref, name←ptr, byte←ptr, xmem, $other←types$, $other𡤌onsts$;
weave←vars, weave←vars←impl2 := $other←vars$;
weave←procs, weave←init := error, jump←out, initialize, open←input, input←ln;
weave←procs, weave←id := print←id, id←lookup, mod←lookup, prefix←lookup;
weave←procs, weave←input := lines𡤍ont←match, prime←the𡤌hange𡤋uffer, check𡤌hange, reset←input, get←line;
weave←procs, weave𡤌ode := control𡤌ode, skip←limbo, skip←tex, skip𡤌omment, copy←limbo, copy←tex, copy𡤌omment, get←next;
weave←procs, weave←xref := new←xref, new←mod←xref;
weave←procs, weave←low := flush𡤋uffer, finish←line, break←out, out←mod, out←name;
weave←procs, weave←parse1 := easy�ses, sub�ses, pascal←parse, pascal←translate, outer←parse;
weave←procs, weave←parse2 := red, sq, five�ses, alpha�ses, translate, app𡤌omment, app←octal, app←hex;
weave←procs, weave←output := push←level, get←output, output←pascal, make←output;
weave←procs, weave←phase←i := pascal←xref, outer←xref, mod𡤌heck, phase←i;
weave←procs, weave←phase←i←i := finish←pascal, footnote, phase←ii;
weave←procs, weave←phase←i←i←i := unbucket, mod←print, phase←iii;
weave←proc𡤊rray, weave←proc𡤊rray←impl := byte←mem;
weave←procs, weave𡤎xternals←impl := tty←rewrite, file←reset, file←rewrite, file𡤌lose, file←get←pos;
weave←procs, weave←impl := $other←procs$, $global←labels$, $main$
end) := weave.pas
INLINE byte←mem;
INVENTFILENAMES FALSE;
MAKEFILE compile←weave;
PROCARRAY byte←mem;
TARGET cedar;