Mike Gran <spk...@yahoo.com> writes: > Hmmm. I should have been watching the clock. I've left master in > an odd state w.r.t. strings and chars. The storage is available for > non-8-bit strings and chars, but, nothing can be done with them.
I don't think it's a serious issue. Just a small comment: --8<---------------cut here---------------start------------->8--- scheme@(guile-user)> (%string-dump "foo") $1 = ((string . "foo") (start . 0) (length . 3) (shared . #f) (stringbuf . #<unknown-type (0x30227 . 0x6f6f66) @ 0x7f1c59c99b00>) (stringbuf-chars . "foo") (stringbuf-length . 3) (stringbuf-shared . #f) (stringbuf-inline . #t) (stringbuf-wide . #f)) --8<---------------cut here---------------end--------------->8--- The stringbuf object cannot be printed (as shown above), has no public type predicate, etc., so I think we'd better not return it to Scheme code. Can you change that in `%string-dump'? Note for later: it'd be great if we had micro-benchmarks to compare the former and the new string implementations (on Latin-1 strings, that is), and to compare Latin-1 and wide strings in the new implementation. Thanks, Ludo'.