Portable S-expressions Lassi Kortela (16 Apr 2021 09:40 UTC)
Re: Portable S-expressions John Cowan (20 Apr 2021 12:09 UTC)
Re: Portable S-expressions elf (20 Apr 2021 12:14 UTC)
Re: Portable S-expressions Lassi Kortela (20 Apr 2021 12:49 UTC)
Re: Portable S-expressions elf (20 Apr 2021 12:59 UTC)
Re: Portable S-expressions Lassi Kortela (20 Apr 2021 13:09 UTC)
Re: Portable S-expressions John Cowan (20 Apr 2021 19:29 UTC)
Re: Portable S-expressions Lassi Kortela (20 Apr 2021 20:55 UTC)
Re: Portable S-expressions Peter Bex (20 Apr 2021 12:22 UTC)
Re: Portable S-expressions Lassi Kortela (20 Apr 2021 13:03 UTC)
Re: Portable S-expressions Peter Bex (20 Apr 2021 13:15 UTC)
Re: Portable S-expressions Lassi Kortela (20 Apr 2021 13:27 UTC)
Re: Portable S-expressions Lassi Kortela (20 Apr 2021 13:33 UTC)

Portable S-expressions Lassi Kortela 16 Apr 2021 09:40 UTC

Separate but related to Twinjo, I'd like to specify a portable
S-expression syntax covering the essentials:

- Integers and reals.
- Symbols using a safe character set.
- Double-quoted strings with Unicode escapes.
- Vertical-bar symbols using the same escapes as the strings.
- Proper lists, including the empty list. No dotted lists.
- Line comments starting with semicolon.

Missing:

- Booleans (because no agreement among Lisps; can use true/false or t/f).
- Vectors, bitvectors, homogeneous numeric vectors.
- Sets and maps.
- Fancy comments (multiline comments, datum comments).
- Directives #!

Open questions:

- Do bytevectors belong in a bare-bones portable S-expression syntax?
- Do rational numbers belong?
- Should underscores be supported in numbers?

The file name extension could be `.pose` which doesn't appear to be used
by any common program (I checked several file extension sites). A MIME
type should also be registered with IANA.

I already have code for several programming languages to read most of
the above syntax.