67 |
|
|
68 |
vs_push((*kf)(x)); |
vs_push((*kf)(x)); |
69 |
b = ifuncall2(test_function, item_compared, vs_head); |
b = ifuncall2(test_function, item_compared, vs_head); |
70 |
vs_pop; |
vs_popp; |
71 |
return(b != Cnil); |
return(b != Cnil); |
72 |
} |
} |
73 |
|
|
79 |
|
|
80 |
vs_push((*kf)(x)); |
vs_push((*kf)(x)); |
81 |
b = ifuncall2(test_function, item_compared, vs_head); |
b = ifuncall2(test_function, item_compared, vs_head); |
82 |
vs_pop; |
vs_popp; |
83 |
return(b == Cnil); |
return(b == Cnil); |
84 |
} |
} |
85 |
|
|
104 |
return(x); |
return(x); |
105 |
} |
} |
106 |
|
|
107 |
|
void |
108 |
setupTEST(item, test, test_not, key) |
setupTEST(item, test, test_not, key) |
109 |
object item, test, test_not, key; |
object item, test, test_not, key; |
110 |
{ |
{ |
127 |
} |
} |
128 |
|
|
129 |
#define PREDICATE(f, f_if, f_if_not, n) \ |
#define PREDICATE(f, f_if, f_if_not, n) \ |
130 |
f_if() \ |
void f_if() \ |
131 |
{ \ |
{ \ |
132 |
if (vs_top - vs_base < n) \ |
if (vs_top - vs_base < n) \ |
133 |
too_few_arguments(); \ |
too_few_arguments(); \ |
136 |
f(); \ |
f(); \ |
137 |
} \ |
} \ |
138 |
\ |
\ |
139 |
f_if_not() \ |
void f_if_not() \ |
140 |
{ \ |
{ \ |
141 |
if (vs_top - vs_base < n) \ |
if (vs_top - vs_base < n) \ |
142 |
too_few_arguments(); \ |
too_few_arguments(); \ |
149 |
endp1(x) |
endp1(x) |
150 |
object x; |
object x; |
151 |
{ |
{ |
|
object endp_temp; |
|
152 |
|
|
153 |
if (type_of(x) == t_cons) |
if (type_of(x) == t_cons) |
154 |
return(FALSE); |
return(FALSE); |
156 |
return(TRUE); |
return(TRUE); |
157 |
vs_push(x); |
vs_push(x); |
158 |
FEwrong_type_argument(sLlist, x); |
FEwrong_type_argument(sLlist, x); |
159 |
|
return(FALSE); |
160 |
} |
} |
161 |
|
|
162 |
object |
object |
168 |
if (type_of(x) == t_cons) |
if (type_of(x) == t_cons) |
169 |
return(x->c.c_car); |
return(x->c.c_car); |
170 |
FEwrong_type_argument(sLlist, x); |
FEwrong_type_argument(sLlist, x); |
171 |
|
return(Cnil); |
172 |
} |
} |
173 |
|
|
174 |
object |
object |
180 |
if (type_of(x) == t_cons) |
if (type_of(x) == t_cons) |
181 |
return(x->c.c_cdr); |
return(x->c.c_cdr); |
182 |
FEwrong_type_argument(sLlist, x); |
FEwrong_type_argument(sLlist, x); |
183 |
|
return(Cnil); |
184 |
} |
} |
185 |
|
|
186 |
object |
object |
190 |
if (type_of(x) == t_cons) |
if (type_of(x) == t_cons) |
191 |
return(x->c.c_car); |
return(x->c.c_car); |
192 |
FEwrong_type_argument(sLcons, x); |
FEwrong_type_argument(sLcons, x); |
193 |
|
return(Cnil); |
194 |
} |
} |
195 |
|
|
196 |
object |
object |
200 |
if (type_of(x) == t_cons) |
if (type_of(x) == t_cons) |
201 |
return(x->c.c_cdr); |
return(x->c.c_cdr); |
202 |
FEwrong_type_argument(sLcons, x); |
FEwrong_type_argument(sLcons, x); |
203 |
|
return(Cnil); |
204 |
} |
} |
205 |
|
|
206 |
stack_cons() |
void |
207 |
|
stack_cons(void) |
208 |
{ |
{ |
209 |
object c; |
object c; |
210 |
|
|
431 |
Copy_tree(x) copies tree x |
Copy_tree(x) copies tree x |
432 |
and pushes the result onto vs. |
and pushes the result onto vs. |
433 |
*/ |
*/ |
434 |
|
void |
435 |
copy_tree(x) |
copy_tree(x) |
436 |
object x; |
object x; |
437 |
{ |
{ |
450 |
the result of substituting new in tree |
the result of substituting new in tree |
451 |
onto vs. |
onto vs. |
452 |
*/ |
*/ |
453 |
|
void |
454 |
subst(new, tree) |
subst(new, tree) |
455 |
object new, tree; |
object new, tree; |
456 |
{ |
{ |
471 |
the result of nsubstituting new in *treep |
the result of nsubstituting new in *treep |
472 |
to *treep. |
to *treep. |
473 |
*/ |
*/ |
474 |
|
void |
475 |
nsubst(new, treep) |
nsubst(new, treep) |
476 |
object new, *treep; |
object new, *treep; |
477 |
{ |
{ |
490 |
result of substituting tree by alist |
result of substituting tree by alist |
491 |
onto vs. |
onto vs. |
492 |
*/ |
*/ |
493 |
|
void |
494 |
sublis(alist, tree) |
sublis(alist, tree) |
495 |
object alist, tree; |
object alist, tree; |
496 |
{ |
{ |
519 |
the result of substiting *treep by alist |
the result of substiting *treep by alist |
520 |
to *treep. |
to *treep. |
521 |
*/ |
*/ |
522 |
|
void |
523 |
nsublis(alist, treep) |
nsublis(alist, treep) |
524 |
object alist, *treep; |
object alist, *treep; |
525 |
{ |
{ |
542 |
} |
} |
543 |
} |
} |
544 |
|
|
545 |
|
void |
546 |
Lcar() |
Lcar() |
547 |
{ |
{ |
548 |
check_arg(1); |
check_arg(1); |
553 |
FEwrong_type_argument(sLlist, vs_base[0]); |
FEwrong_type_argument(sLlist, vs_base[0]); |
554 |
} |
} |
555 |
|
|
556 |
|
void |
557 |
Lcdr() |
Lcdr() |
558 |
{ |
{ |
559 |
check_arg(1); |
check_arg(1); |
593 |
object cdddar(x) object x; { return(cdr(cdr(cdr(car(x))))); } |
object cdddar(x) object x; { return(cdr(cdr(cdr(car(x))))); } |
594 |
object cddddr(x) object x; { return(cdr(cdr(cdr(cdr(x))))); } |
object cddddr(x) object x; { return(cdr(cdr(cdr(cdr(x))))); } |
595 |
|
|
596 |
Lcaar(){ check_arg(1); vs_base[0] = car(car(vs_base[0])); } |
void Lcaar(){ check_arg(1); vs_base[0] = car(car(vs_base[0])); } |
597 |
Lcadr(){ check_arg(1); vs_base[0] = car(cdr(vs_base[0])); } |
void Lcadr(){ check_arg(1); vs_base[0] = car(cdr(vs_base[0])); } |
598 |
Lcdar(){ check_arg(1); vs_base[0] = cdr(car(vs_base[0])); } |
void Lcdar(){ check_arg(1); vs_base[0] = cdr(car(vs_base[0])); } |
599 |
Lcddr(){ check_arg(1); vs_base[0] = cdr(cdr(vs_base[0])); } |
void Lcddr(){ check_arg(1); vs_base[0] = cdr(cdr(vs_base[0])); } |
600 |
Lcaaar(){ check_arg(1); vs_base[0] = car(car(car(vs_base[0]))); } |
void Lcaaar(){ check_arg(1); vs_base[0] = car(car(car(vs_base[0]))); } |
601 |
Lcaadr(){ check_arg(1); vs_base[0] = car(car(cdr(vs_base[0]))); } |
void Lcaadr(){ check_arg(1); vs_base[0] = car(car(cdr(vs_base[0]))); } |
602 |
Lcadar(){ check_arg(1); vs_base[0] = car(cdr(car(vs_base[0]))); } |
void Lcadar(){ check_arg(1); vs_base[0] = car(cdr(car(vs_base[0]))); } |
603 |
Lcaddr(){ check_arg(1); vs_base[0] = car(cdr(cdr(vs_base[0]))); } |
void Lcaddr(){ check_arg(1); vs_base[0] = car(cdr(cdr(vs_base[0]))); } |
604 |
Lcdaar(){ check_arg(1); vs_base[0] = cdr(car(car(vs_base[0]))); } |
void Lcdaar(){ check_arg(1); vs_base[0] = cdr(car(car(vs_base[0]))); } |
605 |
Lcdadr(){ check_arg(1); vs_base[0] = cdr(car(cdr(vs_base[0]))); } |
void Lcdadr(){ check_arg(1); vs_base[0] = cdr(car(cdr(vs_base[0]))); } |
606 |
Lcddar(){ check_arg(1); vs_base[0] = cdr(cdr(car(vs_base[0]))); } |
void Lcddar(){ check_arg(1); vs_base[0] = cdr(cdr(car(vs_base[0]))); } |
607 |
Lcdddr(){ check_arg(1); vs_base[0] = cdr(cdr(cdr(vs_base[0]))); } |
void Lcdddr(){ check_arg(1); vs_base[0] = cdr(cdr(cdr(vs_base[0]))); } |
608 |
Lcaaaar(){check_arg(1); vs_base[0] = car(car(car(car(vs_base[0]))));} |
void Lcaaaar(){check_arg(1); vs_base[0] = car(car(car(car(vs_base[0]))));} |
609 |
Lcaaadr(){check_arg(1); vs_base[0] = car(car(car(cdr(vs_base[0]))));} |
void Lcaaadr(){check_arg(1); vs_base[0] = car(car(car(cdr(vs_base[0]))));} |
610 |
Lcaadar(){check_arg(1); vs_base[0] = car(car(cdr(car(vs_base[0]))));} |
void Lcaadar(){check_arg(1); vs_base[0] = car(car(cdr(car(vs_base[0]))));} |
611 |
Lcaaddr(){check_arg(1); vs_base[0] = car(car(cdr(cdr(vs_base[0]))));} |
void Lcaaddr(){check_arg(1); vs_base[0] = car(car(cdr(cdr(vs_base[0]))));} |
612 |
Lcadaar(){check_arg(1); vs_base[0] = car(cdr(car(car(vs_base[0]))));} |
void Lcadaar(){check_arg(1); vs_base[0] = car(cdr(car(car(vs_base[0]))));} |
613 |
Lcadadr(){check_arg(1); vs_base[0] = car(cdr(car(cdr(vs_base[0]))));} |
void Lcadadr(){check_arg(1); vs_base[0] = car(cdr(car(cdr(vs_base[0]))));} |
614 |
Lcaddar(){check_arg(1); vs_base[0] = car(cdr(cdr(car(vs_base[0]))));} |
void Lcaddar(){check_arg(1); vs_base[0] = car(cdr(cdr(car(vs_base[0]))));} |
615 |
Lcadddr(){check_arg(1); vs_base[0] = car(cdr(cdr(cdr(vs_base[0]))));} |
void Lcadddr(){check_arg(1); vs_base[0] = car(cdr(cdr(cdr(vs_base[0]))));} |
616 |
Lcdaaar(){check_arg(1); vs_base[0] = cdr(car(car(car(vs_base[0]))));} |
void Lcdaaar(){check_arg(1); vs_base[0] = cdr(car(car(car(vs_base[0]))));} |
617 |
Lcdaadr(){check_arg(1); vs_base[0] = cdr(car(car(cdr(vs_base[0]))));} |
void Lcdaadr(){check_arg(1); vs_base[0] = cdr(car(car(cdr(vs_base[0]))));} |
618 |
Lcdadar(){check_arg(1); vs_base[0] = cdr(car(cdr(car(vs_base[0]))));} |
void Lcdadar(){check_arg(1); vs_base[0] = cdr(car(cdr(car(vs_base[0]))));} |
619 |
Lcdaddr(){check_arg(1); vs_base[0] = cdr(car(cdr(cdr(vs_base[0]))));} |
void Lcdaddr(){check_arg(1); vs_base[0] = cdr(car(cdr(cdr(vs_base[0]))));} |
620 |
Lcddaar(){check_arg(1); vs_base[0] = cdr(cdr(car(car(vs_base[0]))));} |
void Lcddaar(){check_arg(1); vs_base[0] = cdr(cdr(car(car(vs_base[0]))));} |
621 |
Lcddadr(){check_arg(1); vs_base[0] = cdr(cdr(car(cdr(vs_base[0]))));} |
void Lcddadr(){check_arg(1); vs_base[0] = cdr(cdr(car(cdr(vs_base[0]))));} |
622 |
Lcdddar(){check_arg(1); vs_base[0] = cdr(cdr(cdr(car(vs_base[0]))));} |
void Lcdddar(){check_arg(1); vs_base[0] = cdr(cdr(cdr(car(vs_base[0]))));} |
623 |
Lcddddr(){check_arg(1); vs_base[0] = cdr(cdr(cdr(cdr(vs_base[0]))));} |
void Lcddddr(){check_arg(1); vs_base[0] = cdr(cdr(cdr(cdr(vs_base[0]))));} |
624 |
|
|
625 |
DEFUNO("NTH",object,fLnth,LISP,2,2,NONE,OI,OO,OO,OO,Lnth,"")(index,list) |
DEFUNO("NTH",object,fLnth,LISP,2,2,NONE,OI,OO,OO,OO,Lnth,"")(index,list) |
626 |
int index; |
int index; |
670 |
object x; |
object x; |
671 |
{ return fLnth(9,x);} |
{ return fLnth(9,x);} |
672 |
|
|
673 |
|
void |
674 |
Lcons() |
Lcons() |
675 |
{ |
{ |
676 |
object x; |
object x; |
680 |
x->c.c_car = vs_base[0]; |
x->c.c_car = vs_base[0]; |
681 |
x->c.c_cdr = vs_base[1]; |
x->c.c_cdr = vs_base[1]; |
682 |
vs_base[0] = x; |
vs_base[0] = x; |
683 |
vs_pop; |
vs_popp; |
684 |
} |
} |
685 |
|
|
686 |
@(defun tree_equal (x y &key test test_not) |
@(defun tree_equal (x y &key test test_not) |
693 |
@(return x) |
@(return x) |
694 |
@) |
@) |
695 |
|
|
696 |
|
void |
697 |
Lendp() |
Lendp() |
698 |
{ |
{ |
|
object endp_temp; |
|
699 |
|
|
700 |
check_arg(1); |
check_arg(1); |
701 |
|
|
710 |
FEwrong_type_argument(sLlist, vs_base[0]); |
FEwrong_type_argument(sLlist, vs_base[0]); |
711 |
} |
} |
712 |
|
|
713 |
|
void |
714 |
Llist_length() |
Llist_length() |
715 |
{ |
{ |
716 |
int n; |
int n; |
759 |
return(x->c.c_car); |
return(x->c.c_car); |
760 |
} |
} |
761 |
|
|
762 |
|
void |
763 |
Lnthcdr() |
Lnthcdr() |
764 |
{ |
{ |
765 |
check_arg(2); |
check_arg(2); |
766 |
vs_base[0] = nthcdr(fixint(vs_base[0]), vs_base[1]); |
vs_base[0] = nthcdr(fixint(vs_base[0]), vs_base[1]); |
767 |
vs_pop; |
vs_popp; |
768 |
} |
} |
769 |
|
|
770 |
object |
object |
784 |
return(x); |
return(x); |
785 |
} |
} |
786 |
|
|
787 |
|
void |
788 |
Llast() |
Llast() |
789 |
{ object endp_temp; |
{ object endp_temp; |
790 |
check_arg(1); |
check_arg(1); |
794 |
vs_base[0] = vs_base[0]->c.c_cdr; |
vs_base[0] = vs_base[0]->c.c_cdr; |
795 |
} |
} |
796 |
|
|
797 |
|
void |
798 |
Llist() |
Llist() |
799 |
{ |
{ |
800 |
vs_push(Cnil); |
vs_push(Cnil); |
802 |
stack_cons(); |
stack_cons(); |
803 |
} |
} |
804 |
|
|
805 |
|
void |
806 |
LlistA() |
LlistA() |
807 |
{ |
{ |
808 |
if (vs_top == vs_base) |
if (vs_top == vs_base) |
864 |
@(return x) |
@(return x) |
865 |
@) |
@) |
866 |
|
|
867 |
|
void |
868 |
Lappend() |
Lappend() |
869 |
{ |
{ |
870 |
object x; |
object x; |
876 |
while (vs_top > vs_base + 1) { |
while (vs_top > vs_base + 1) { |
877 |
x = append(vs_top[-2], vs_top[-1]); |
x = append(vs_top[-2], vs_top[-1]); |
878 |
vs_top[-2] = x; |
vs_top[-2] = x; |
879 |
vs_pop; |
vs_popp; |
880 |
} |
} |
881 |
} |
} |
882 |
|
|
883 |
|
void |
884 |
Lcopy_list() |
Lcopy_list() |
885 |
{ |
{ |
886 |
check_arg(1); |
check_arg(1); |
887 |
vs_base[0] = copy_list(vs_base[0]); |
vs_base[0] = copy_list(vs_base[0]); |
888 |
} |
} |
889 |
|
|
890 |
|
void |
891 |
Lcopy_alist() |
Lcopy_alist() |
892 |
{ |
{ |
893 |
check_arg(1); |
check_arg(1); |
894 |
vs_base[0] = copy_alist(vs_base[0]); |
vs_base[0] = copy_alist(vs_base[0]); |
895 |
} |
} |
896 |
|
|
897 |
|
void |
898 |
Lcopy_tree() |
Lcopy_tree() |
899 |
{ |
{ |
900 |
check_arg(1); |
check_arg(1); |
902 |
vs_base[0] = vs_pop; |
vs_base[0] = vs_pop; |
903 |
} |
} |
904 |
|
|
905 |
|
void |
906 |
Lrevappend() |
Lrevappend() |
907 |
{ object endp_temp; |
{ object endp_temp; |
908 |
object x, y; |
object x, y; |
932 |
return(x); |
return(x); |
933 |
} |
} |
934 |
|
|
935 |
|
void |
936 |
Lnconc() |
Lnconc() |
937 |
{ object endp_temp; |
{ object endp_temp; |
938 |
object x, l, m; |
object x, l, m=Cnil; |
939 |
int i, narg; |
int i, narg; |
940 |
|
|
941 |
narg = vs_top - vs_base - 1; |
narg = vs_top - vs_base - 1; |
962 |
vs_top = vs_base+1; |
vs_top = vs_base+1; |
963 |
} |
} |
964 |
|
|
965 |
|
void |
966 |
Lreconc() |
Lreconc() |
967 |
{ object endp_temp; |
{ object endp_temp; |
968 |
object x, y, z; |
object x, y, z; |
1018 |
@(return lis) |
@(return lis) |
1019 |
@) |
@) |
1020 |
|
|
1021 |
|
void |
1022 |
Lldiff() |
Lldiff() |
1023 |
{ object endp_temp; |
{ object endp_temp; |
1024 |
int i; |
int i; |
1034 |
while (i-- > 0) |
while (i-- > 0) |
1035 |
stack_cons(); |
stack_cons(); |
1036 |
vs_base[0] = vs_pop; |
vs_base[0] = vs_pop; |
1037 |
vs_pop; |
vs_popp; |
1038 |
} |
} |
1039 |
|
|
1040 |
|
void |
1041 |
Lrplaca() |
Lrplaca() |
1042 |
{ |
{ |
1043 |
check_arg(2); |
check_arg(2); |
1044 |
check_type_cons(&vs_base[0]); |
check_type_cons(&vs_base[0]); |
1045 |
take_care(vs_base[1]); |
take_care(vs_base[1]); |
1046 |
vs_base[0]->c.c_car = vs_base[1]; |
vs_base[0]->c.c_car = vs_base[1]; |
1047 |
vs_pop; |
vs_popp; |
1048 |
} |
} |
1049 |
|
|
1050 |
|
void |
1051 |
Lrplacd() |
Lrplacd() |
1052 |
{ |
{ |
1053 |
check_arg(2); |
check_arg(2); |
1054 |
check_type_cons(&vs_base[0]); |
check_type_cons(&vs_base[0]); |
1055 |
vs_base[0]->c.c_cdr = vs_base[1]; |
vs_base[0]->c.c_cdr = vs_base[1]; |
1056 |
vs_pop; |
vs_popp; |
1057 |
} |
} |
1058 |
|
|
1059 |
@(defun subst (new old tree &key test test_not key) |
@(defun subst (new old tree &key test test_not key) |
1087 |
object alist,tree; |
object alist,tree; |
1088 |
bool (*tst)(); |
bool (*tst)(); |
1089 |
{object v; |
{object v; |
|
BEGIN: |
|
1090 |
for (v=alist ; v!=Cnil; v=v->c.c_cdr) |
for (v=alist ; v!=Cnil; v=v->c.c_cdr) |
1091 |
{ if ((*tst)(v->c.c_car->c.c_car ,tree)) |
{ if ((*tst)(v->c.c_car->c.c_car ,tree)) |
1092 |
return(v->c.c_car->c.c_cdr);} |
return(v->c.c_car->c.c_cdr);} |
1098 |
} |
} |
1099 |
return tree; |
return tree; |
1100 |
} |
} |
1101 |
|
|
1102 |
|
int |
1103 |
eq(x,y) |
eq(x,y) |
1104 |
object x,y; |
object x,y; |
1105 |
{return (x==y);} |
{return (x==y);} |
1174 |
@(return list) |
@(return list) |
1175 |
@) |
@) |
1176 |
|
|
1177 |
|
void |
1178 |
Ltailp() |
Ltailp() |
1179 |
{ object endp_temp; |
{ object endp_temp; |
1180 |
object x; |
object x; |
1183 |
for (x = vs_base[1]; !endp(x); x = x->c.c_cdr) |
for (x = vs_base[1]; !endp(x); x = x->c.c_cdr) |
1184 |
if (x == vs_base[0]) { |
if (x == vs_base[0]) { |
1185 |
vs_base[0] = Ct; |
vs_base[0] = Ct; |
1186 |
vs_pop; |
vs_popp; |
1187 |
return; |
return; |
1188 |
} |
} |
1189 |
vs_base[0] = Cnil; |
vs_base[0] = Cnil; |
1190 |
vs_pop; |
vs_popp; |
1191 |
return; |
return; |
1192 |
} |
} |
1193 |
|
|
1194 |
|
void |
1195 |
Ladjoin() |
Ladjoin() |
1196 |
{ |
{ |
1197 |
object *base = vs_base, *top = vs_top; |
object *base = vs_base, *top = vs_top; |
1207 |
vs_top = base+2; |
vs_top = base+2; |
1208 |
} |
} |
1209 |
|
|
1210 |
|
void |
1211 |
Lacons() |
Lacons() |
1212 |
{ |
{ |
1213 |
check_arg(3); |
check_arg(3); |
1260 |
@(return a_list) |
@(return a_list) |
1261 |
@) |
@) |
1262 |
|
|
1263 |
Lassoc() { car_or_cdr = car; Lassoc_or_rassoc(); } |
void Lassoc() { car_or_cdr = car; Lassoc_or_rassoc(); } |
1264 |
Lrassoc() { car_or_cdr = cdr; Lassoc_or_rassoc(); } |
void Lrassoc() { car_or_cdr = cdr; Lassoc_or_rassoc(); } |
1265 |
|
|
1266 |
static bool true_or_false; |
static bool true_or_false; |
1267 |
|
|
1279 |
@(return a_list) |
@(return a_list) |
1280 |
@) |
@) |
1281 |
|
|
1282 |
Lassoc_if() { car_or_cdr = car; true_or_false = TRUE; Lassoc_or_rassoc_predicate(); } |
void Lassoc_if() { car_or_cdr = car; true_or_false = TRUE; Lassoc_or_rassoc_predicate(); } |
1283 |
Lassoc_if_not() { car_or_cdr = car; true_or_false = FALSE; Lassoc_or_rassoc_predicate(); } |
void Lassoc_if_not() { car_or_cdr = car; true_or_false = FALSE; Lassoc_or_rassoc_predicate(); } |
1284 |
Lrassoc_if() { car_or_cdr = cdr; true_or_false = TRUE; Lassoc_or_rassoc_predicate(); } |
void Lrassoc_if() { car_or_cdr = cdr; true_or_false = TRUE; Lassoc_or_rassoc_predicate(); } |
1285 |
Lrassoc_if_not() { car_or_cdr = cdr; true_or_false = FALSE; Lassoc_or_rassoc_predicate(); } |
void Lrassoc_if_not() { car_or_cdr = cdr; true_or_false = FALSE; Lassoc_or_rassoc_predicate(); } |
1286 |
|
|
1287 |
bool |
bool |
1288 |
member_eq(x, l) |
member_eq(x, l) |
1289 |
object x, l; |
object x, l; |
1290 |
{ |
{ |
|
object endp_temp; |
|
1291 |
|
|
1292 |
for (; type_of(l) == t_cons; l = l->c.c_cdr) |
for (; type_of(l) == t_cons; l = l->c.c_cdr) |
1293 |
if (x == l->c.c_car) |
if (x == l->c.c_car) |
1295 |
return(FALSE); |
return(FALSE); |
1296 |
} |
} |
1297 |
|
|
1298 |
|
void |
1299 |
siLmemq() |
siLmemq() |
1300 |
{ |
{ |
1301 |
object x, l; |
object x, l; |
1308 |
for (; type_of(l) == t_cons; l = l->c.c_cdr) |
for (; type_of(l) == t_cons; l = l->c.c_cdr) |
1309 |
if (x == l->c.c_car) { |
if (x == l->c.c_car) { |
1310 |
vs_base[0] = l; |
vs_base[0] = l; |
1311 |
vs_pop; |
vs_popp; |
1312 |
return; |
return; |
1313 |
} |
} |
1314 |
|
|
1315 |
vs_base[0] = Cnil; |
vs_base[0] = Cnil; |
1316 |
vs_pop; |
vs_popp; |
1317 |
} |
} |
1318 |
|
|
1319 |
|
void |
1320 |
delete_eq(x, lp) |
delete_eq(x, lp) |
1321 |
object x, *lp; |
object x, *lp; |
1322 |
{ |
{ |
1327 |
} |
} |
1328 |
} |
} |
1329 |
|
|
1330 |
|
void |
1331 |
init_list_function() |
init_list_function() |
1332 |
{ |
{ |
|
object endp_temp; |
|
1333 |
|
|
1334 |
sKtest = make_keyword("TEST"); |
sKtest = make_keyword("TEST"); |
1335 |
sKtest_not = make_keyword("TEST-NOT"); |
sKtest_not = make_keyword("TEST-NOT"); |