Added a bunch of TODO's

This commit is contained in:
Justin Ethier 2015-02-24 13:48:13 -05:00
parent 626bfe7886
commit 40fa7d99da

View file

@ -1101,6 +1101,10 @@ static object apply(object cont, object func, object args){
object result; object result;
common_type buf; common_type buf;
// TODO: should probably check arg counts and error out if needed
// TODO: move primitive application to another function
// TODO: use *primitives* to make a list of all missing prims below
switch(type_of(func)) { switch(type_of(func)) {
case primitive_tag: case primitive_tag:
if (func == primitive_cons) { if (func == primitive_cons) {
@ -1135,33 +1139,6 @@ static object apply(object cont, object func, object args){
result = Cyc_global_variables; result = Cyc_global_variables;
} else if (func == primitive_has_91cycle_127) { } else if (func == primitive_has_91cycle_127) {
result = Cyc_has_cycle(car(args)); result = Cyc_has_cycle(car(args));
// caar(x) (car(car(x)))
// cdar(x) (cdr(car(x)))
// cddr(x) (cdr(cdr(x)))
// caaar(x) (car(car(car(x))))
// caadr(x) (car(car(cdr(x))))
// cadar(x) (car(cdr(car(x))))
// caddr(x) (car(cdr(cdr(x))))
// cdaar(x) (cdr(car(car(x))))
// cdadr(x) (cdr(car(cdr(x))))
// cddar(x) (cdr(cdr(car(x))))
// cdddr(x) (cdr(cdr(cdr(x))))
// caaaar(x) (car(car(car(car(x)))))
// caaadr(x) (car(car(car(cdr(x)))))
// caadar(x) (car(car(cdr(car(x)))))
// caaddr(x) (car(car(cdr(cdr(x)))))
// cadaar(x) (car(cdr(car(car(x)))))
// cadadr(x) (car(cdr(car(cdr(x)))))
// caddar(x) (car(cdr(cdr(car(x)))))
// cadddr(x) (car(cdr(cdr(cdr(x)))))
// cdaaar(x) (cdr(car(car(car(x)))))
// cdaadr(x) (cdr(car(car(cdr(x)))))
// cdadar(x) (cdr(car(cdr(car(x)))))
// cdaddr(x) (cdr(car(cdr(cdr(x)))))
// cddaar(x) (cdr(cdr(car(car(x)))))
// cddadr(x) (cdr(cdr(car(cdr(x)))))
// cdddar(x) (cdr(cdr(cdr(car(x)))))
// cddddr(x) (cdr(cdr(cdr(cdr(x)))))
} else { } else {
printf("Unrecognized primitive function: %s\n", ((symbol_type *)func)->pname); printf("Unrecognized primitive function: %s\n", ((symbol_type *)func)->pname);
exit(1); exit(1);