ftp.nice.ch/pub/next/developer/languages/lisp/AKCL.1.599.s.tar.gz#/akcl-1-599/cmpnew/cmpmap.c

This is cmpmap.c in view mode; [Download] [Up]

/* (C) Copyright Taiichi Yuasa and Masami Hagiya, 1984. All rights reserved. */
#include <cmpinclude.h>
#include "cmpmap.h"
init_cmpmap(start,size,data)char *start;int size;object data;
{	register object *base=vs_top;register object *sup=base+VM2;vs_check;
	Cstart=start;Csize=size;Cdata=data;set_VV(VV,VM1,data);
	(void)(putprop(VV[0],VV[1],VV[2]));
	(void)(putprop(VV[3],VV[4],VV[2]));
	(void)(putprop(VV[0],VV[5],VV[6]));
	(void)(putprop(VV[7],VV[8],VV[2]));
	(void)(putprop(VV[9],VV[10],VV[2]));
	(void)(putprop(VV[7],VV[11],VV[6]));
	(void)(putprop(VV[12],VV[13],VV[2]));
	(void)(putprop(VV[14],VV[15],VV[2]));
	(void)(putprop(VV[12],VV[16],VV[6]));
	MF(VV[1],L10,start,size,data);
	MF(VV[4],L11,start,size,data);
	MF(VV[8],L12,start,size,data);
	MF(VV[10],L13,start,size,data);
	MF(VV[13],L14,start,size,data);
	MF(VV[15],L15,start,size,data);
	MF(VV[40],L16,start,size,data);
	MF(VV[5],L17,start,size,data);
	MF(VV[11],L18,start,size,data);
	MF(VV[16],L19,start,size,data);
	MF(VV[41],L20,start,size,data);
	vs_top=vs_base=base;
}
/*	function definition for C1MAPCAR	*/

static L10()
{	register object *base=vs_base;
	register object *sup=base+VM3;
	vs_reserve(VM3);
	check_arg(1);
	vs_top=sup;
TTL:;
	base[1]= VV[0];
	base[2]= Ct;
	base[3]= base[0];
	vs_top=(vs_base=base+1)+3;
	L16();
	return;
}
/*	function definition for C1MAPLIST	*/

static L11()
{	register object *base=vs_base;
	register object *sup=base+VM4;
	vs_reserve(VM4);
	check_arg(1);
	vs_top=sup;
TTL:;
	base[1]= VV[0];
	base[2]= Cnil;
	base[3]= base[0];
	vs_top=(vs_base=base+1)+3;
	L16();
	return;
}
/*	function definition for C1MAPC	*/

static L12()
{	register object *base=vs_base;
	register object *sup=base+VM5;
	vs_reserve(VM5);
	check_arg(1);
	vs_top=sup;
TTL:;
	base[1]= VV[7];
	base[2]= Ct;
	base[3]= base[0];
	vs_top=(vs_base=base+1)+3;
	L16();
	return;
}
/*	function definition for C1MAPL	*/

static L13()
{	register object *base=vs_base;
	register object *sup=base+VM6;
	vs_reserve(VM6);
	check_arg(1);
	vs_top=sup;
TTL:;
	base[1]= VV[7];
	base[2]= Cnil;
	base[3]= base[0];
	vs_top=(vs_base=base+1)+3;
	L16();
	return;
}
/*	function definition for C1MAPCAN	*/

static L14()
{	register object *base=vs_base;
	register object *sup=base+VM7;
	vs_reserve(VM7);
	check_arg(1);
	vs_top=sup;
TTL:;
	base[1]= VV[12];
	base[2]= Ct;
	base[3]= base[0];
	vs_top=(vs_base=base+1)+3;
	L16();
	return;
}
/*	function definition for C1MAPCON	*/

static L15()
{	register object *base=vs_base;
	register object *sup=base+VM8;
	vs_reserve(VM8);
	check_arg(1);
	vs_top=sup;
TTL:;
	base[1]= VV[12];
	base[2]= Cnil;
	base[3]= base[0];
	vs_top=(vs_base=base+1)+3;
	L16();
	return;
}
/*	function definition for C1MAP-FUNCTIONS	*/

static L16()
{	register object *base=vs_base;
	register object *sup=base+VM9;
	vs_reserve(VM9);
	check_arg(3);
	vs_top=sup;
TTL:;
	base[3]= Cnil;
	base[4]= Cnil;
	if(endp(base[2])){
	goto T29;}
	if(!(endp(cdr(base[2])))){
	goto T28;}
T29:;
	base[5]= VV[17];
	base[6]= VV[18];
	base[7]= make_fixnum(length(base[2]));
	(void)simple_symlispcall_no_event(VV[42],base+5,3);
T28:;
	base[5]= car(base[2]);
	base[3]= simple_symlispcall_no_event(VV[43],base+5,1);
	base[5]= cadr(base[3]);
	base[4]= simple_symlispcall_no_event(VV[44],base+5,1);
	base[6]= cdr(base[2]);
	base[7]= base[4];
	base[5]= simple_symlispcall_no_event(VV[45],base+6,2);
	base[6]= list(5,base[0],base[4],base[3],base[1],base[5]);
	vs_top=(vs_base=base+6)+1;
	return;
}
/*	function definition for C2MAPCAR	*/

static L17()
{	register object *base=vs_base;
	register object *sup=base+VM10;
	vs_reserve(VM10);
	bds_check;
	check_arg(3);
	vs_top=sup;
TTL:;
	bds_bind(VV[19],symbol_value(VV[19]));
	bds_bind(VV[21],VV[20]);
	setq(VV[22],number_plus(symbol_value(VV[22]),VV[23]));
	base[10]= symbol_value(VV[22]);
	base[5]= make_cons(base[10],Ct);
	base[10]= simple_symlispcall_no_event(VV[46],base+11,0);
	base[6]= list(2,VV[24],base[10]);
	setq(VV[26],number_plus(symbol_value(VV[26]),VV[23]));
	base[10]= symbol_value(VV[26]);
	base[7]= list(2,VV[25],base[10]);
	{object V1;
	object V2= base[2];
	if(endp(V2)){
	base[8]= Cnil;
	goto T53;}
	base[10]=V1=MMcons(Cnil,Cnil);
T54:;
	setq(VV[26],number_plus(symbol_value(VV[26]),VV[23]));
	base[12]= symbol_value(VV[26]);
	(V1->c.c_car)= list(2,VV[25],base[12]);
	if(endp(V2=MMcdr(V2))){
	base[8]= base[10];
	goto T53;}
	V1=MMcdr(V1)=MMcons(Cnil,Cnil);
	goto T54;}
T53:;
	base[9]= Cnil;
	base[10]= base[0];
	base[9]= simple_symlispcall_no_event(VV[47],base+10,1);
	base[11]=symbol_function(VV[48]);
	base[12]= base[2];
	base[14]= make_fixnum(length(base[2]));
	base[15]= VV[27];
	base[16]= Ct;
	vs_top=(vs_base=base+14)+3;
	Lmake_list();
	vs_top=sup;
	base[13]= vs_base[0];
	base[10]= simple_lispcall_no_event(base+11,2);
	base[11]= base[0];
	vs_top=(vs_base=base+10)+2;
	L20();
	vs_top=sup;
	base[2]= vs_base[0];
	princ_str("\n	{object ",VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(59,VV[28]);
	{object V3;
	object V4;
	V3= base[8];
	V4= car((V3));
T79:;
	if(!(endp((V3)))){
	goto T80;}
	goto T75;
T80:;
	princ_str("\n	object ",VV[28]);
	base[10]= (V4);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("= ",VV[28]);
	base[10]= car(base[2]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(59,VV[28]);
	base[10]= car(base[2]);
	base[2]= cdr(base[2]);
	V3= cdr((V3));
	V4= car((V3));
	goto T79;}
T75:;
	if((symbol_value(VV[29]))==Cnil){
	goto T103;}
	princ_str("\n	if(endp(",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(41,VV[28]);
	{object V5;
	object V6;
	V5= cdr(base[8]);
	V6= car((V5));
T114:;
	if(!(endp((V5)))){
	goto T115;}
	goto T110;
T115:;
	princ_str("||endp(",VV[28]);
	base[10]= (V6);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(41,VV[28]);
	V5= cdr((V5));
	V6= car((V5));
	goto T114;}
T110:;
	princ_str("){",VV[28]);
	goto T101;
T103:;
	princ_str("\n	if(",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("==Cnil",VV[28]);
	{object V7;
	object V8;
	V7= cdr(base[8]);
	V8= car((V7));
T139:;
	if(!(endp((V7)))){
	goto T140;}
	goto T135;
T140:;
	princ_str("||",VV[28]);
	base[10]= (V8);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("==Cnil",VV[28]);
	V7= cdr((V7));
	V8= car((V7));
	goto T139;}
T135:;
	princ_str("){",VV[28]);
T101:;
	base[10]= Cnil;
	base[11]= VV[30];
	(void)simple_symlispcall_no_event(VV[50],base+10,2);
	princ_char(125,VV[28]);
	princ_str("\n	",VV[28]);
	base[10]= base[6];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(61,VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcons(Cnil,Cnil);",VV[28]);
	if((cdr(base[5]))==Cnil){
	goto T168;}
	princ_str("\nT",VV[28]);
	base[10]= car(base[5]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str(":;",VV[28]);
T168:;
	bds_bind(VV[31],list(2,VV[32],cadr(base[7])));
	setq(VV[22],number_plus(symbol_value(VV[22]),VV[23]));
	base[12]= symbol_value(VV[22]);
	bds_bind(VV[33],make_cons(base[12],Cnil));
	bds_bind(VV[34],make_cons((VV[33]->s.s_dbind),symbol_value(VV[34])));
	base[13]=symbol_function(VV[51]);
	base[14]= base[0];
	if((base[1])==Cnil){
	goto T185;}
	{object V9;
	object V10= base[8];
	if(endp(V10)){
	base[15]= Cnil;
	goto T183;}
	base[16]=V9=MMcons(Cnil,Cnil);
T187:;
	base[18]= symbol_value(VV[36]);
	base[19]= list(2,VV[32],cadr((V10->c.c_car)));
	(V9->c.c_car)= list(3,VV[35],base[18],base[19]);
	if(endp(V10=MMcdr(V10))){
	base[15]= base[16];
	goto T183;}
	V9=MMcdr(V9)=MMcons(Cnil,Cnil);
	goto T187;}
T185:;
	{object V11;
	object V12= base[8];
	if(endp(V12)){
	base[15]= Cnil;
	goto T183;}
	base[16]=V11=MMcons(Cnil,Cnil);
T189:;
	(V11->c.c_car)= list(3,VV[35],symbol_value(VV[36]),(V12->c.c_car));
	if(endp(V12=MMcdr(V12))){
	base[15]= base[16];
	goto T183;}
	V11=MMcdr(V11)=MMcons(Cnil,Cnil);
	goto T189;}
T183:;
	base[16]= base[9];
	(void)simple_lispcall_no_event(base+13,3);
	if((cdr((VV[33]->s.s_dbind)))==Cnil){
	bds_unwind1;
	bds_unwind1;
	bds_unwind1;
	goto T175;}
	princ_str("\nT",VV[28]);
	base[13]= car((VV[33]->s.s_dbind));
	(void)simple_symlispcall_no_event(VV[49],base+13,1);
	princ_str(":;",VV[28]);
	bds_unwind1;
	bds_unwind1;
	bds_unwind1;
T175:;
	if((symbol_value(VV[29]))==Cnil){
	goto T200;}
	princ_str("\n	if(endp(",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcdr(",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("))",VV[28]);
	{object V13;
	object V14;
	V13= cdr(base[8]);
	V14= car((V13));
T214:;
	if(!(endp((V13)))){
	goto T215;}
	goto T210;
T215:;
	princ_str("||endp(",VV[28]);
	base[10]= (V14);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcdr(",VV[28]);
	base[10]= (V14);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("))",VV[28]);
	V13= cdr((V13));
	V14= car((V13));
	goto T214;}
T210:;
	princ_str("){",VV[28]);
	goto T198;
T200:;
	princ_str("\n	if((",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcdr(",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("))==Cnil",VV[28]);
	{object V15;
	object V16;
	V15= cdr(base[8]);
	V16= car((V15));
T245:;
	if(!(endp((V15)))){
	goto T246;}
	goto T241;
T246:;
	princ_str("||(",VV[28]);
	base[10]= (V16);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcdr(",VV[28]);
	base[10]= (V16);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("))==Cnil",VV[28]);
	V15= cdr((V15));
	V16= car((V15));
	goto T245;}
T241:;
	princ_str("){",VV[28]);
T198:;
	base[10]= base[6];
	base[11]= VV[30];
	(void)simple_symlispcall_no_event(VV[50],base+10,2);
	princ_char(125,VV[28]);
	princ_str("\n	",VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcdr(",VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str(")=MMcons(Cnil,Cnil);",VV[28]);
	princ_str("\n	",VV[28]);
	if(type_of(base[5])!=t_cons)FEwrong_type_argument(Scons,base[5]);
	(base[5])->c.c_cdr = Ct;
	princ_str("goto T",VV[28]);
	base[10]= car(base[5]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(59,VV[28]);
	princ_char(125,VV[28]);
	symlispcall_no_event(VV[52],base+10,0);
	bds_unwind1;
	bds_unwind1;
	return;
}
/*	function definition for C2MAPC	*/

static L18()
{	register object *base=vs_base;
	register object *sup=base+VM11;
	vs_reserve(VM11);
	bds_check;
	check_arg(3);
	vs_top=sup;
TTL:;
	bds_bind(VV[19],symbol_value(VV[19]));
	bds_bind(VV[21],VV[20]);
	setq(VV[22],number_plus(symbol_value(VV[22]),VV[23]));
	base[9]= symbol_value(VV[22]);
	base[5]= make_cons(base[9],Ct);
	{object V17;
	object V18= base[2];
	if(endp(V18)){
	base[7]= Cnil;
	goto T289;}
	base[9]=V17=MMcons(Cnil,Cnil);
T290:;
	setq(VV[26],number_plus(symbol_value(VV[26]),VV[23]));
	base[11]= symbol_value(VV[26]);
	(V17->c.c_car)= list(2,VV[25],base[11]);
	if(endp(V18=MMcdr(V18))){
	base[7]= base[9];
	goto T289;}
	V17=MMcdr(V17)=MMcons(Cnil,Cnil);
	goto T290;}
T289:;
	base[6]= Cnil;
	base[8]= Cnil;
	base[9]= base[0];
	base[8]= simple_symlispcall_no_event(VV[47],base+9,1);
	base[10]=symbol_function(VV[48]);
	base[11]= base[2];
	base[13]= make_fixnum(length(base[2]));
	base[14]= VV[27];
	base[15]= Ct;
	vs_top=(vs_base=base+13)+3;
	Lmake_list();
	vs_top=sup;
	base[12]= vs_base[0];
	base[9]= simple_lispcall_no_event(base+10,2);
	base[10]= base[0];
	vs_top=(vs_base=base+9)+2;
	L20();
	vs_top=sup;
	base[2]= vs_base[0];
	base[6]= car(base[2]);
	princ_str("\n	{",VV[28]);
	{object V19;
	object V20;
	V19= base[7];
	V20= car((V19));
T314:;
	if(!(endp((V19)))){
	goto T315;}
	goto T310;
T315:;
	princ_str("\n	object ",VV[28]);
	base[9]= (V20);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str("= ",VV[28]);
	base[9]= car(base[2]);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_char(59,VV[28]);
	base[9]= car(base[2]);
	base[2]= cdr(base[2]);
	V19= cdr((V19));
	V20= car((V19));
	goto T314;}
T310:;
	if((symbol_value(VV[29]))==Cnil){
	goto T338;}
	princ_str("\n	if(endp(",VV[28]);
	base[9]= car(base[7]);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_char(41,VV[28]);
	{object V21;
	object V22;
	V21= cdr(base[7]);
	V22= car((V21));
T349:;
	if(!(endp((V21)))){
	goto T350;}
	goto T345;
T350:;
	princ_str("||endp(",VV[28]);
	base[9]= (V22);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_char(41,VV[28]);
	V21= cdr((V21));
	V22= car((V21));
	goto T349;}
T345:;
	princ_str("){",VV[28]);
	goto T336;
T338:;
	princ_str("\n	if(",VV[28]);
	base[9]= car(base[7]);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str("==Cnil",VV[28]);
	{object V23;
	object V24;
	V23= cdr(base[7]);
	V24= car((V23));
T374:;
	if(!(endp((V23)))){
	goto T375;}
	goto T370;
T375:;
	princ_str("||",VV[28]);
	base[9]= (V24);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str("==Cnil",VV[28]);
	V23= cdr((V23));
	V24= car((V23));
	goto T374;}
T370:;
	princ_str("){",VV[28]);
T336:;
	base[9]= Cnil;
	base[10]= VV[30];
	(void)simple_symlispcall_no_event(VV[50],base+9,2);
	princ_char(125,VV[28]);
	if((cdr(base[5]))==Cnil){
	goto T395;}
	princ_str("\nT",VV[28]);
	base[9]= car(base[5]);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str(":;",VV[28]);
T395:;
	bds_bind(VV[31],VV[37]);
	setq(VV[22],number_plus(symbol_value(VV[22]),VV[23]));
	base[11]= symbol_value(VV[22]);
	bds_bind(VV[33],make_cons(base[11],Cnil));
	bds_bind(VV[34],make_cons((VV[33]->s.s_dbind),symbol_value(VV[34])));
	base[12]=symbol_function(VV[51]);
	base[13]= base[0];
	if((base[1])==Cnil){
	goto T411;}
	{object V25;
	object V26= base[7];
	if(endp(V26)){
	base[14]= Cnil;
	goto T409;}
	base[15]=V25=MMcons(Cnil,Cnil);
T413:;
	base[17]= symbol_value(VV[36]);
	base[18]= list(2,VV[32],cadr((V26->c.c_car)));
	(V25->c.c_car)= list(3,VV[35],base[17],base[18]);
	if(endp(V26=MMcdr(V26))){
	base[14]= base[15];
	goto T409;}
	V25=MMcdr(V25)=MMcons(Cnil,Cnil);
	goto T413;}
T411:;
	{object V27;
	object V28= base[7];
	if(endp(V28)){
	base[14]= Cnil;
	goto T409;}
	base[15]=V27=MMcons(Cnil,Cnil);
T415:;
	(V27->c.c_car)= list(3,VV[35],symbol_value(VV[36]),(V28->c.c_car));
	if(endp(V28=MMcdr(V28))){
	base[14]= base[15];
	goto T409;}
	V27=MMcdr(V27)=MMcons(Cnil,Cnil);
	goto T415;}
T409:;
	base[15]= base[8];
	(void)simple_lispcall_no_event(base+12,3);
	if((cdr((VV[33]->s.s_dbind)))==Cnil){
	bds_unwind1;
	bds_unwind1;
	bds_unwind1;
	goto T402;}
	princ_str("\nT",VV[28]);
	base[12]= car((VV[33]->s.s_dbind));
	(void)simple_symlispcall_no_event(VV[49],base+12,1);
	princ_str(":;",VV[28]);
	bds_unwind1;
	bds_unwind1;
	bds_unwind1;
T402:;
	if((symbol_value(VV[29]))==Cnil){
	goto T426;}
	princ_str("\n	if(endp(",VV[28]);
	base[9]= car(base[7]);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str("=MMcdr(",VV[28]);
	base[9]= car(base[7]);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str("))",VV[28]);
	{object V29;
	object V30;
	V29= cdr(base[7]);
	V30= car((V29));
T440:;
	if(!(endp((V29)))){
	goto T441;}
	goto T436;
T441:;
	princ_str("||endp(",VV[28]);
	base[9]= (V30);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str("=MMcdr(",VV[28]);
	base[9]= (V30);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str("))",VV[28]);
	V29= cdr((V29));
	V30= car((V29));
	goto T440;}
T436:;
	princ_str("){",VV[28]);
	goto T424;
T426:;
	princ_str("\n	if((",VV[28]);
	base[9]= car(base[7]);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str("=MMcdr(",VV[28]);
	base[9]= car(base[7]);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str("))==Cnil",VV[28]);
	{object V31;
	object V32;
	V31= cdr(base[7]);
	V32= car((V31));
T471:;
	if(!(endp((V31)))){
	goto T472;}
	goto T467;
T472:;
	princ_str("||(",VV[28]);
	base[9]= (V32);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str("=MMcdr(",VV[28]);
	base[9]= (V32);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_str("))==Cnil",VV[28]);
	V31= cdr((V31));
	V32= car((V31));
	goto T471;}
T467:;
	princ_str("){",VV[28]);
T424:;
	base[9]= base[6];
	base[10]= VV[30];
	(void)simple_symlispcall_no_event(VV[50],base+9,2);
	princ_char(125,VV[28]);
	princ_str("\n	",VV[28]);
	if(type_of(base[5])!=t_cons)FEwrong_type_argument(Scons,base[5]);
	(base[5])->c.c_cdr = Ct;
	princ_str("goto T",VV[28]);
	base[9]= car(base[5]);
	(void)simple_symlispcall_no_event(VV[49],base+9,1);
	princ_char(59,VV[28]);
	princ_char(125,VV[28]);
	symlispcall_no_event(VV[52],base+9,0);
	bds_unwind1;
	bds_unwind1;
	return;
}
/*	function definition for C2MAPCAN	*/

static L19()
{	register object *base=vs_base;
	register object *sup=base+VM12;
	vs_reserve(VM12);
	bds_check;
	check_arg(3);
	vs_top=sup;
TTL:;
	bds_bind(VV[19],symbol_value(VV[19]));
	bds_bind(VV[21],VV[20]);
	setq(VV[22],number_plus(symbol_value(VV[22]),VV[23]));
	base[10]= symbol_value(VV[22]);
	base[5]= make_cons(base[10],Ct);
	base[10]= simple_symlispcall_no_event(VV[46],base+11,0);
	base[6]= list(2,VV[24],base[10]);
	setq(VV[26],number_plus(symbol_value(VV[26]),VV[23]));
	base[10]= symbol_value(VV[26]);
	base[7]= list(2,VV[25],base[10]);
	{object V33;
	object V34= base[2];
	if(endp(V34)){
	base[8]= Cnil;
	goto T512;}
	base[10]=V33=MMcons(Cnil,Cnil);
T513:;
	setq(VV[26],number_plus(symbol_value(VV[26]),VV[23]));
	base[12]= symbol_value(VV[26]);
	(V33->c.c_car)= list(2,VV[25],base[12]);
	if(endp(V34=MMcdr(V34))){
	base[8]= base[10];
	goto T512;}
	V33=MMcdr(V33)=MMcons(Cnil,Cnil);
	goto T513;}
T512:;
	base[9]= Cnil;
	base[10]= base[0];
	base[9]= simple_symlispcall_no_event(VV[47],base+10,1);
	base[11]=symbol_function(VV[48]);
	base[12]= base[2];
	base[14]= make_fixnum(length(base[2]));
	base[15]= VV[27];
	base[16]= Ct;
	vs_top=(vs_base=base+14)+3;
	Lmake_list();
	vs_top=sup;
	base[13]= vs_base[0];
	base[10]= simple_lispcall_no_event(base+11,2);
	base[11]= base[0];
	vs_top=(vs_base=base+10)+2;
	L20();
	vs_top=sup;
	base[2]= vs_base[0];
	princ_str("\n	{object ",VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(59,VV[28]);
	{object V35;
	object V36;
	V35= base[8];
	V36= car((V35));
T538:;
	if(!(endp((V35)))){
	goto T539;}
	goto T534;
T539:;
	princ_str("\n	object ",VV[28]);
	base[10]= (V36);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("= ",VV[28]);
	base[10]= car(base[2]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(59,VV[28]);
	base[10]= car(base[2]);
	base[2]= cdr(base[2]);
	V35= cdr((V35));
	V36= car((V35));
	goto T538;}
T534:;
	if((symbol_value(VV[29]))==Cnil){
	goto T562;}
	princ_str("\n	if(endp(",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(41,VV[28]);
	{object V37;
	object V38;
	V37= cdr(base[8]);
	V38= car((V37));
T573:;
	if(!(endp((V37)))){
	goto T574;}
	goto T569;
T574:;
	princ_str("||endp(",VV[28]);
	base[10]= (V38);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(41,VV[28]);
	V37= cdr((V37));
	V38= car((V37));
	goto T573;}
T569:;
	princ_str("){",VV[28]);
	goto T560;
T562:;
	princ_str("\n	if(",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("==Cnil",VV[28]);
	{object V39;
	object V40;
	V39= cdr(base[8]);
	V40= car((V39));
T598:;
	if(!(endp((V39)))){
	goto T599;}
	goto T594;
T599:;
	princ_str("||",VV[28]);
	base[10]= (V40);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("==Cnil",VV[28]);
	V39= cdr((V39));
	V40= car((V39));
	goto T598;}
T594:;
	princ_str("){",VV[28]);
T560:;
	base[10]= Cnil;
	base[11]= VV[30];
	(void)simple_symlispcall_no_event(VV[50],base+10,2);
	princ_char(125,VV[28]);
	princ_str("\n	",VV[28]);
	base[10]= base[6];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(61,VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcons(Cnil,Cnil);",VV[28]);
	if((cdr(base[5]))==Cnil){
	goto T627;}
	princ_str("\nT",VV[28]);
	base[10]= car(base[5]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str(":;",VV[28]);
T627:;
	bds_bind(VV[31],list(2,VV[38],cadr(base[7])));
	setq(VV[22],number_plus(symbol_value(VV[22]),VV[23]));
	base[12]= symbol_value(VV[22]);
	bds_bind(VV[33],make_cons(base[12],Cnil));
	bds_bind(VV[34],make_cons((VV[33]->s.s_dbind),symbol_value(VV[34])));
	base[13]=symbol_function(VV[51]);
	base[14]= base[0];
	if((base[1])==Cnil){
	goto T644;}
	{object V41;
	object V42= base[8];
	if(endp(V42)){
	base[15]= Cnil;
	goto T642;}
	base[16]=V41=MMcons(Cnil,Cnil);
T646:;
	base[18]= symbol_value(VV[36]);
	base[19]= list(2,VV[32],cadr((V42->c.c_car)));
	(V41->c.c_car)= list(3,VV[35],base[18],base[19]);
	if(endp(V42=MMcdr(V42))){
	base[15]= base[16];
	goto T642;}
	V41=MMcdr(V41)=MMcons(Cnil,Cnil);
	goto T646;}
T644:;
	{object V43;
	object V44= base[8];
	if(endp(V44)){
	base[15]= Cnil;
	goto T642;}
	base[16]=V43=MMcons(Cnil,Cnil);
T648:;
	(V43->c.c_car)= list(3,VV[35],symbol_value(VV[36]),(V44->c.c_car));
	if(endp(V44=MMcdr(V44))){
	base[15]= base[16];
	goto T642;}
	V43=MMcdr(V43)=MMcons(Cnil,Cnil);
	goto T648;}
T642:;
	base[16]= base[9];
	(void)simple_lispcall_no_event(base+13,3);
	if((cdr((VV[33]->s.s_dbind)))==Cnil){
	bds_unwind1;
	bds_unwind1;
	bds_unwind1;
	goto T634;}
	princ_str("\nT",VV[28]);
	base[13]= car((VV[33]->s.s_dbind));
	(void)simple_symlispcall_no_event(VV[49],base+13,1);
	princ_str(":;",VV[28]);
	bds_unwind1;
	bds_unwind1;
	bds_unwind1;
T634:;
	if((symbol_value(VV[29]))==Cnil){
	goto T659;}
	princ_str("\n	while(!endp(MMcdr(",VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str(")))",VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcdr(",VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str(");",VV[28]);
	princ_str("\n	if(endp(",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcdr(",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("))",VV[28]);
	{object V45;
	object V46;
	V45= cdr(base[8]);
	V46= car((V45));
T684:;
	if(!(endp((V45)))){
	goto T685;}
	goto T680;
T685:;
	princ_str("||endp(",VV[28]);
	base[10]= (V46);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcdr(",VV[28]);
	base[10]= (V46);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("))",VV[28]);
	V45= cdr((V45));
	V46= car((V45));
	goto T684;}
T680:;
	princ_str("){",VV[28]);
	goto T657;
T659:;
	princ_str("\n	while(MMcdr(",VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str(")!=Cnil)",VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcdr(",VV[28]);
	base[10]= base[7];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str(");",VV[28]);
	princ_str("\n	if((",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcdr(",VV[28]);
	base[10]= car(base[8]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("))==Cnil",VV[28]);
	{object V47;
	object V48;
	V47= cdr(base[8]);
	V48= car((V47));
T726:;
	if(!(endp((V47)))){
	goto T727;}
	goto T722;
T727:;
	princ_str("||(",VV[28]);
	base[10]= (V48);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("=MMcdr(",VV[28]);
	base[10]= (V48);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("))==Cnil",VV[28]);
	V47= cdr((V47));
	V48= car((V47));
	goto T726;}
T722:;
	princ_str("){",VV[28]);
T657:;
	princ_str("\n	",VV[28]);
	base[10]= base[6];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(61,VV[28]);
	base[10]= base[6];
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_str("->c.c_cdr;",VV[28]);
	base[10]= base[6];
	base[11]= VV[30];
	(void)simple_symlispcall_no_event(VV[50],base+10,2);
	princ_char(125,VV[28]);
	princ_str("\n	",VV[28]);
	if(type_of(base[5])!=t_cons)FEwrong_type_argument(Scons,base[5]);
	(base[5])->c.c_cdr = Ct;
	princ_str("goto T",VV[28]);
	base[10]= car(base[5]);
	(void)simple_symlispcall_no_event(VV[49],base+10,1);
	princ_char(59,VV[28]);
	princ_char(125,VV[28]);
	symlispcall_no_event(VV[52],base+10,0);
	bds_unwind1;
	bds_unwind1;
	return;
}
/*	function definition for PUSH-CHANGED-VARS	*/

static L20()
{	register object *base=vs_base;
	register object *sup=base+VM13;
	vs_reserve(VM13);
	check_arg(2);
	vs_top=sup;
TTL:;
	base[2]= Cnil;
	base[3]= make_cons(base[1],Cnil);
	base[4]= base[0];
	base[5]= car(base[4]);
T770:;
	if(!(endp(base[4]))){
	goto T771;}
	base[6]= reverse(base[2]);
	vs_top=(vs_base=base+6)+1;
	return;
T771:;
	if(!(type_of(base[5])==t_cons)){
	goto T777;}
	if(!(car(base[5])==VV[39])){
	goto T777;}
	base[6]= cadr(base[5]);
	base[7]= base[3];
	if((simple_symlispcall_no_event(VV[53],base+6,2))==Cnil){
	goto T777;}
	base[7]= simple_symlispcall_no_event(VV[46],base+8,0);
	base[6]= list(2,VV[24],base[7]);
	princ_str("\n	",VV[28]);
	base[7]= base[6];
	(void)simple_symlispcall_no_event(VV[49],base+7,1);
	princ_str("= ",VV[28]);
	base[7]= base[5];
	(void)simple_symlispcall_no_event(VV[49],base+7,1);
	princ_char(59,VV[28]);
	base[2]= make_cons(base[6],base[2]);
	goto T775;
T777:;
	base[2]= make_cons(base[5],base[2]);
T775:;
	base[4]= cdr(base[4]);
	base[5]= car(base[4]);
	goto T770;
}

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.