Tony Garnock-Jones
8276a50552
Repair error in Rust integer width calculation
2023-10-31 13:27:03 +01:00
Tony Garnock-Jones
cf50e00f80
Repair failing TS bigint tests
2023-10-31 12:53:54 +01:00
Tony Garnock-Jones
1a2657fe33
Simplify and firm up test suite. Known failures: TS, wrt bigint
2023-10-30 17:28:33 +01:00
Tony Garnock-Jones
b8fb7abab1
New tests and fixes for bad surrogate pair situations. Closes #43
2023-10-29 21:30:54 +01:00
Tony Garnock-Jones
9595872177
Test cases and implementation updates for delimiters following Boolean and SymbolOrNumber. Closes #47
2023-10-29 21:04:52 +01:00
Tony Garnock-Jones
3b89cbe880
Switch back to prefix-format binary annotations
2023-10-15 00:35:25 +02:00
Tony Garnock-Jones
b7a2acf65b
Update implementations for simplified binary syntax.
...
As part of this, I noticed a problem when updating the Rust
implementation. With the BF..84 design for annotations, if you are
wanting to skip annotations—for example, if you're parsing
incrementally, SAX-style, ignoring annotations—then with any
parenthesised form you have to remember to check for and skip something
after reading a term. This is awkward, so I want to revisit the design
of annotations and go back to the prefix-form (85..) of the
current-mainline design.
2023-10-14 21:29:09 +02:00
Tony Garnock-Jones
d73118fc77
Update implementations
2023-02-07 10:42:30 +01:00
Tony Garnock-Jones
23dbf3cb43
Repair multiple-glob common path usage. Closes #39
2023-02-04 17:07:16 +01:00
Tony Garnock-Jones
9559558831
Hack to allow external module paths to be symbols instead of strings
2023-02-02 21:56:12 +01:00
Tony Garnock-Jones
a8d7fda89e
merge-preserves
2022-11-28 22:38:23 +01:00
Tony Garnock-Jones
269ed2391a
Repair text syntax for numbers and symbols. Closes #19/#36/#37/#38.
...
Numbers and (bare) Symbols are now disambiguated after reading, which
permits leading `+`, leading `0`, and a wider range of acceptable
Symbols.
Updates spec text, test cases, and implementations. Some ancillary fixes
to Python's comparison routines are also included.
2022-11-08 19:56:24 +01:00
Tony Garnock-Jones
c49b8673f7
READMEs for Schema implementations
2022-06-09 13:49:59 +02:00
Tony Garnock-Jones
850678a80a
New test of very long integer
2022-01-13 23:29:47 +01:00
Tony Garnock-Jones
32ebebec34
Move racket preserves-tool out of the way (in favour of the rust one)
2021-08-10 08:40:11 -04:00
Tony Garnock-Jones
9b100ab9aa
Tweak base64 variant handling
2021-08-02 11:41:45 +02:00
Tony Garnock-Jones
790782fc87
Hex and Base64 encodings in preserves-tool
2021-07-13 15:58:05 +02:00
Tony Garnock-Jones
0fb1ef4efd
Repair error in schema include
2021-07-03 16:27:50 +02:00
Tony Garnock-Jones
60d1be41a3
Rename NamedSimplePattern_ -> Binding
2021-06-25 10:25:26 +02:00
Tony Garnock-Jones
fdb43f6292
Constrain names/identifiers in schemas to be lowest-common-denominator.
2021-06-25 09:45:07 +02:00
Tony Garnock-Jones
da513a249e
Allow void to be `->preserve`able
2021-06-17 15:26:43 +02:00
Tony Garnock-Jones
f808e37e89
Fix very stupid mistake in order.rkt
2021-06-16 21:36:09 +02:00
Tony Garnock-Jones
f12343e723
Add missing *->preserve coercions during unparsing
2021-06-10 10:01:04 +02:00
Tony Garnock-Jones
0d4d1e738c
Coerce integers to floats/doubles during unparse
2021-06-09 20:02:06 +02:00
Tony Garnock-Jones
feb6361029
I forgot embedded!
2021-06-08 16:15:53 +02:00
Tony Garnock-Jones
27002dfe7f
Always use wrapper struct
2021-06-08 15:50:29 +02:00
Tony Garnock-Jones
e5b6c46169
Time reader self-test
2021-06-08 15:34:33 +02:00
Tony Garnock-Jones
6cecf64df5
Move toward being user-facing rather than plugin-facing
2021-06-08 15:34:25 +02:00
Tony Garnock-Jones
7acf7c5b40
Generic-method based unparsing; prelude to generic pattern-formation
2021-06-08 15:26:32 +02:00
Tony Garnock-Jones
0bcb4e64ec
Add struct ty-field for better structure in ty-records
2021-06-08 09:56:04 +02:00
Tony Garnock-Jones
30bcc1a50b
Fix embedded (un)parsing to rely on the reader
2021-06-08 09:27:03 +02:00
Tony Garnock-Jones
a4d61017d8
Repair error wrt `float` struct test
2021-06-08 09:26:35 +02:00
Tony Garnock-Jones
ade9b0a0f1
map-embeddeds
2021-06-08 09:26:10 +02:00
Tony Garnock-Jones
f93d329f48
Small optimization
2021-06-08 09:25:52 +02:00
Tony Garnock-Jones
c05180c492
Some tool docs; improve help message of preserves-tool
2021-06-04 17:47:16 +02:00
Tony Garnock-Jones
139f4ff08b
Accept parameters in #lang preserves-schema lines
2021-06-03 23:23:22 +02:00
Tony Garnock-Jones
53bd5a1a7e
Escape schema names with ? instead of $
2021-06-02 12:35:56 +02:00
Tony Garnock-Jones
b968f77ff6
Provide fold-Schema-definitions and map-Schema-definitions
2021-06-02 12:35:33 +02:00
Tony Garnock-Jones
bd68786f1c
Schema compiler plugins
2021-06-02 06:56:44 +02:00
Tony Garnock-Jones
7683a64a5b
Repair Racket schema reader
2021-06-01 16:53:21 +02:00
Tony Garnock-Jones
8d96743d53
Redo schema embedded value patterns to use embedded syntax and an interface schema
2021-06-01 16:10:04 +02:00
Tony Garnock-Jones
b23acdaf5a
Default to text output from preserves-tool
2021-06-01 15:37:45 +02:00
Tony Garnock-Jones
947b816a57
Improve error-handling in Racket schema reader
2021-05-28 20:06:46 +02:00
Tony Garnock-Jones
b69c3a0894
Avoid name clashes with :parse-embedded and :embedded->preserves
2021-05-28 10:33:28 +02:00
Tony Garnock-Jones
d7bf235813
Avoid use of void so much
2021-05-27 09:54:11 +02:00
Tony Garnock-Jones
ab12c6535f
Simpler embedded parsing/unparsing
2021-05-27 09:53:55 +02:00
Tony Garnock-Jones
534018e3a4
batch-compile
2021-05-27 09:52:58 +02:00
Tony Garnock-Jones
264c4b9d2e
Repair integer parsing
2021-05-27 00:28:42 +02:00
Tony Garnock-Jones
87e816306d
Better import failure error reporting
2021-05-26 23:27:55 +02:00
Tony Garnock-Jones
5470497aa2
Update gen/schema.rkt
2021-05-26 23:16:49 +02:00