diff options
| author | Keith Packard <keithp@keithp.com> | 2017-11-17 23:23:50 -0800 | 
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2017-11-17 23:26:59 -0800 | 
| commit | cf5729a0bae51172f12fc9ec4339d4e975a45fcc (patch) | |
| tree | f67bef57d31f5f202718f7e8dbc6f41ac6b6c346 /src/lisp/ao_lisp_poly.c | |
| parent | e1acf5eb12aceda7aa838df031c1da1129d0fa5d (diff) | |
altos/lisp: Finish first pass through r7rs
* print -> write, patom -> display
* Add read-char, write-char
* Add exit, current-jiffy, current-second, jiffies-per-second
* Add for-each and string-for-each
* Avoid duplicate builtins with different atoms
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src/lisp/ao_lisp_poly.c')
| -rw-r--r-- | src/lisp/ao_lisp_poly.c | 52 | 
1 files changed, 26 insertions, 26 deletions
| diff --git a/src/lisp/ao_lisp_poly.c b/src/lisp/ao_lisp_poly.c index 160734b1..7e4c98d2 100644 --- a/src/lisp/ao_lisp_poly.c +++ b/src/lisp/ao_lisp_poly.c @@ -15,46 +15,46 @@  #include "ao_lisp.h"  struct ao_lisp_funcs { -	void (*print)(ao_poly); -	void (*patom)(ao_poly); +	void (*write)(ao_poly); +	void (*display)(ao_poly);  };  static const struct ao_lisp_funcs ao_lisp_funcs[AO_LISP_NUM_TYPE] = {  	[AO_LISP_CONS] = { -		.print = ao_lisp_cons_print, -		.patom = ao_lisp_cons_patom, +		.write = ao_lisp_cons_write, +		.display = ao_lisp_cons_display,  	},  	[AO_LISP_STRING] = { -		.print = ao_lisp_string_print, -		.patom = ao_lisp_string_patom, +		.write = ao_lisp_string_write, +		.display = ao_lisp_string_display,  	},  	[AO_LISP_INT] = { -		.print = ao_lisp_int_print, -		.patom = ao_lisp_int_print, +		.write = ao_lisp_int_write, +		.display = ao_lisp_int_write,  	},  	[AO_LISP_ATOM] = { -		.print = ao_lisp_atom_print, -		.patom = ao_lisp_atom_print, +		.write = ao_lisp_atom_write, +		.display = ao_lisp_atom_write,  	},  	[AO_LISP_BUILTIN] = { -		.print = ao_lisp_builtin_print, -		.patom = ao_lisp_builtin_print, +		.write = ao_lisp_builtin_write, +		.display = ao_lisp_builtin_write,  	},  	[AO_LISP_FRAME] = { -		.print = ao_lisp_frame_print, -		.patom = ao_lisp_frame_print, +		.write = ao_lisp_frame_write, +		.display = ao_lisp_frame_write,  	},  	[AO_LISP_LAMBDA] = { -		.print = ao_lisp_lambda_print, -		.patom = ao_lisp_lambda_print, +		.write = ao_lisp_lambda_write, +		.display = ao_lisp_lambda_write,  	},  	[AO_LISP_STACK] = { -		.print = ao_lisp_stack_print, -		.patom = ao_lisp_stack_print, +		.write = ao_lisp_stack_write, +		.display = ao_lisp_stack_write,  	},  	[AO_LISP_BOOL] = { -		.print = ao_lisp_bool_print, -		.patom = ao_lisp_bool_print, +		.write = ao_lisp_bool_write, +		.display = ao_lisp_bool_write,  	},  }; @@ -69,21 +69,21 @@ funcs(ao_poly p)  }  void -ao_lisp_poly_print(ao_poly p) +ao_lisp_poly_write(ao_poly p)  {  	const struct ao_lisp_funcs *f = funcs(p); -	if (f && f->print) -		f->print(p); +	if (f && f->write) +		f->write(p);  }  void -ao_lisp_poly_patom(ao_poly p) +ao_lisp_poly_display(ao_poly p)  {  	const struct ao_lisp_funcs *f = funcs(p); -	if (f && f->patom) -		f->patom(p); +	if (f && f->display) +		f->display(p);  }  void * | 
