Big round of changes to UCD tables, no longer need runtime conversion.
authorChris Hanson <org/chris-hanson/cph>
Wed, 14 Nov 2018 07:06:20 +0000 (23:06 -0800)
committerChris Hanson <org/chris-hanson/cph>
Wed, 14 Nov 2018 07:09:51 +0000 (23:09 -0800)
commit71a54cfb608bbf099085fe7cb66e7213aa885443
tree1fcc3fba7cffbd33b16d5abf3012a9aea2afb307
parent7737b277d29e7c54dac236c51f811753417c51bd
Big round of changes to UCD tables, no longer need runtime conversion.

Previous tables had to be compiled using 9.2, and couldn't use bytevector,
unicode string syntax, or R7RS char/string escapes.  Now they do that which
results in some small space savings and less work at cold load.

Additionally I changed the representation of multiple-code-point values from
strings to vectors.  The old representation depended on the fact that
vector->string didn't do normalization, so those strings can't be constructed at
compile time (they'll be normalized) and anyway it's not good to depend on that
feature of vector->string.
22 files changed:
src/etc/ucd-converter.scm
src/runtime/bytevector.scm
src/runtime/printer.scm
src/runtime/runtime.pkg
src/runtime/string.scm
src/runtime/ucd-table-canonical-cm-second.scm
src/runtime/ucd-table-canonical-cm.scm
src/runtime/ucd-table-canonical-dm.scm
src/runtime/ucd-table-ccc.scm
src/runtime/ucd-table-cf.scm
src/runtime/ucd-table-gc.scm
src/runtime/ucd-table-gcb.scm
src/runtime/ucd-table-lc.scm
src/runtime/ucd-table-nfc_qc.scm
src/runtime/ucd-table-nt.scm
src/runtime/ucd-table-nv.scm
src/runtime/ucd-table-scf.scm
src/runtime/ucd-table-slc.scm
src/runtime/ucd-table-suc.scm
src/runtime/ucd-table-tc.scm
src/runtime/ucd-table-uc.scm
src/runtime/ucd-table-wb.scm