Another inconclusive session: still nothing works, still making progress.
This commit is contained in:
parent
ef59563e25
commit
eed4711fee
35 changed files with 317 additions and 232 deletions
|
|
@ -33,7 +33,24 @@ struct pso_pointer cdr( struct pso_pointer frame_pointer );
|
|||
|
||||
struct pso_pointer cons( struct pso_pointer frame_pointer );
|
||||
|
||||
struct pso_pointer destroy_cons( struct pso_pointer fp,
|
||||
struct pso_pointer env );
|
||||
struct pso_pointer destroy_cons( struct pso_pointer frame_pointer);
|
||||
|
||||
struct pso_pointer make_cons(struct pso_pointer frame_pointer,
|
||||
struct pso_pointer car,
|
||||
struct pso_pointer cdr);
|
||||
|
||||
/**
|
||||
* macro short-cuts for make_cons.
|
||||
*/
|
||||
// #define make_cons(frame_pointer,car,cdr) (cons(make_frame(2, frame_pointer, car, cdr)))
|
||||
|
||||
/**
|
||||
* Variant which assumes a convention that the frame pointer will always be
|
||||
* called `frame_pointer`
|
||||
*/
|
||||
#define make_cons2(car,cdr) (cons(make_frame(2, frame_pointer, car, cdr)))
|
||||
|
||||
#define c_car(p)(consp(p) ? pointer_to_object(p)->payload.cons.car : nil)
|
||||
#define c_cdr(p)(consp(p) ? pointer_to_object(p)->payload.cons.cdr : nil)
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue