) >)> > )> >>> <==? .X .Y>) (T > > 2> <==? <1 .S1> !\T> <==? <2 .S1> !\$> <=? .S2>> 2> <==? <1 .S2> !\T> <==? <2 .S2> !\$> <=? .S1>>>)>> >> > ) >> 1> .ANAME> .RESULT? .FLUSH?> CALL-DESCRIPTOR>> >> ) DATUM>> ) > )> > >>> )> > >> )> AC-LDESC>> > (HINT) ) > >> )> <1 .ADS> .SARGS .ARGS >> .ARGS > > )> > >) (<==? .INST JUMP> >)> .DEST .HINT> NORMAL> (RESULT) ) > >)> > >)>)> T> )) #DECL ((VAC) ATOM (ARGS) ) .VAC> <==? .VAC>>> )>> .ARGS> .RES> (RDAT) (HINT) ) , .DEST>) ( .DEST >) ()> )>> ) > ) (ELSE )>) ( <==? TYPE-VALUE-PAIR> <==? >> >>> > ARG-DONE> )> ,> ) ( > > ARG-DONE> )> TYPE-VALUE-PAIR> VALUE) (ELSE JUST-VALUE)> T ,>> ) (ELSE T>> )> TYPE-VALUE-PAIR> >> ) (<==? COUNT-VALUE-PAIR> >> )>) (ELSE TYPE-VALUE-PAIR> T>> > ) (<==? COUNT-VALUE-PAIR> T>> > )>)>)> <1 .SARGS >)>> ) )> )) > >> > >> > >> > >>> ;"Might be something in here" > ;"It's OK if current arg is in right AC" >) ( > >>> .TV .ARGS .ADS>) (T ;"Loop detected" T> ; "Can't use will-die? here" )>) ()>>)>> >)>> .ACS>> > )) > ) (SEG <>) "AUX" TLAB ELAB VAC) #DECL ((NAME) ) > > WORD> > LONG> > > > LONG> > > LONG> > LONG>) (ELSE LONG> > LONG> >)>) ( CALL <> <>>)> NORMAL> )) > ) (HINT <>)) <> .HINT>> )) #DECL ((NAME) (NARGS) (RES) (HINT) ) > > > ) (ELSE )>> ,ALL-ACS> > > )> <>> > 0 <> T> > >)> > .RES .HINT>) () (ELSE .RES)> .HINT .NARGS .NAME> 0 <> T> > > .RES .HINT>)>)> NORMAL> ) )) > )> > LIST>> ) (ELSE >)>> .ARGS> NORMAL> > > > ; "If we know what we're calling, and are compiling it, we'll make a glued call" ) (T > <>>)> ; "Push channel" ; "Push operation" ) (T )>> .ARGS> ; "Push args" > .RES>) (T > 4>> DOUBLE> ; "Get atom to call (1st element of funny list stored in mvector)" >> LONG> ; "Number of args" >> ; "Do call" .RES <>> ; "Hack result" NORMAL)>>