Email list hosting service & mailing list manager

Here strings, and #[...] (one more implementation that does both) Jeronimo Pellegrini (21 Nov 2022 02:26 UTC)
Re: Here strings, and #[...] (one more implementation that does both) Marc Nieper-Wißkirchen (21 Nov 2022 16:51 UTC)

Here strings, and #[...] (one more implementation that does both) Jeronimo Pellegrini 21 Nov 2022 02:26 UTC

Hello Lassi.

In the beginning of the SRFI, you mention that

 "Chicken and Gambit support multi-line strings via the following
 syntax."

STklos does the same. And it uses #[...], as MIT Scheme does, for
unreadable objects:

stklos> (current-input-port)
#[input-virtual-port 7f641397b790]
stklos> display
#[primitive display]
stklos> (define-syntax b (syntax-rules () ((_) 'whatever)))
stklos> b
#[syntax b]
stklos> (find-module 'stklos)
#[module stklos]
stklos> (delay 1)
#[promise 7f77da492dc0]
stklos> (define-external c-fabs ((fd :double)) :entry-name "fabs" :return-type :double)
stklos> c-fabs
#[external-func fabs]

Interestingly, in STklos, EOF and void are not unreadable. Type #eof at
the REPL and it goes away. :) Bigloo does the same with EOF, but the
name is #eof-object.
Or, if you type (define x #void) in STklos you'll get the
same result as (define x (if #f #t)).

J.