altos/scheme: Rework display/write code
authorKeith Packard <keithp@keithp.com>
Tue, 19 Dec 2017 19:33:36 +0000 (11:33 -0800)
committerKeith Packard <keithp@keithp.com>
Tue, 19 Dec 2017 19:33:36 +0000 (11:33 -0800)
commit431165e5fa72ba6dffd477de32960745cdec332c
treee27c174d5d6cea72caf92de3a4fe2c97e9249ddf
parent5628b983497d9d03e10cccee157419210a49cfa9
altos/scheme: Rework display/write code

Unify output functions and add bool to switch between write and
display mode. Make that only affect strings (as per r⁷rs).

Use print recursion detection in frame and stack code, eliminating
PRINT flags in type field.

Signed-off-by: Keith Packard <keithp@keithp.com>
17 files changed:
src/scheme/ao_scheme.h
src/scheme/ao_scheme_atom.c
src/scheme/ao_scheme_bool.c
src/scheme/ao_scheme_builtin.c
src/scheme/ao_scheme_cons.c
src/scheme/ao_scheme_error.c
src/scheme/ao_scheme_float.c
src/scheme/ao_scheme_frame.c
src/scheme/ao_scheme_int.c
src/scheme/ao_scheme_lambda.c
src/scheme/ao_scheme_make_const.c
src/scheme/ao_scheme_mem.c
src/scheme/ao_scheme_poly.c
src/scheme/ao_scheme_rep.c
src/scheme/ao_scheme_stack.c
src/scheme/ao_scheme_string.c
src/scheme/ao_scheme_vector.c