wingo pushed a change to branch wip-whippet in repository guile. from 7a749ef79 SCM_ALIGNED is always available new 9fd851da6 Get fractions off scm_double_cell new 342a58ad3 scm_is_string is a normal inline function new 4702becf8 Move internal string interface definitions to internal header new c370d12d0 Better type-safety for snarfed immutable strings new 02c2516b3 Remove SCM_IMMUTABLE_POINTER new c8cd88b53 Remove SCM_IMMUTABLE_CELL, SCM_IMMUTABLE_DOUBLE_CELL new b25a743cf Get strings, symbols, stringbufs off scm_double_cell new 20fcb8ac1 Convert hash tables away from scm_cell new a5f9d0da6 Vm creates values with scm_allocate_tagged
The 9 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: libguile/Makefile.am | 1 + libguile/array-handle.c | 2 +- libguile/bytevectors.c | 2 +- libguile/foreign.c | 1 + libguile/foreign.h | 3 - libguile/fports.c | 2 +- libguile/hash.c | 2 +- libguile/hashtab.c | 193 +++++++---- libguile/hashtab.h | 50 +-- libguile/i18n.c | 2 +- libguile/init.c | 2 +- libguile/inline.c | 1 - libguile/intrinsics.c | 2 +- libguile/load.c | 2 +- libguile/memoize.c | 2 +- libguile/modules.c | 14 +- libguile/numbers.c | 12 +- libguile/numbers.h | 59 +++- libguile/ports.c | 2 +- libguile/posix.c | 2 +- libguile/print.c | 195 +++++------ libguile/random.c | 2 +- libguile/rdelim.c | 4 +- libguile/read.c | 2 +- libguile/rw.c | 4 +- libguile/snarf.h | 14 - libguile/srfi-13.c | 18 +- libguile/srfi-14.c | 2 +- libguile/strings-internal.h | 83 +++++ libguile/strings.c | 820 ++++++++++++++++++++++---------------------- libguile/strings.h | 127 +++---- libguile/strports.c | 2 +- libguile/struct.c | 2 +- libguile/symbols.c | 2 +- libguile/symbols.h | 28 +- libguile/throw.c | 2 +- libguile/vm-engine.c | 7 +- 37 files changed, 923 insertions(+), 747 deletions(-) create mode 100644 libguile/strings-internal.h