Commit Graph

143 Commits

Author SHA1 Message Date
Tony Garnock-Jones e923d87fa5 Switch from `#!` to `#:` for embedded values 2024-02-05 22:38:49 +01:00
Tony Garnock-Jones be32f9b7c8 Remove single-precision floats from the implementations 2024-01-27 14:40:37 +01:00
Tony Garnock-Jones 12a690b4b5 Tests for empty line comment, and fix in Rust 2023-11-14 00:49:58 +01:00
Tony Garnock-Jones 3153dc7c62 More demo 2023-11-07 21:02:33 +01:00
Tony Garnock-Jones 5edcca1e7f Simpler and prettier 2023-11-07 20:54:01 +01:00
Tony Garnock-Jones 401e3973ee test-pexprs.rkt 2023-11-07 19:56:48 +01:00
Tony Garnock-Jones b0001e44cb Prettier 2023-11-07 12:29:21 +01:00
Tony Garnock-Jones 831f15099d Fixes and improvements wrt pexprs 2023-11-07 09:02:05 +01:00
Tony Garnock-Jones 782cbd73b2 write-pexpr (not quite right yet) 2023-11-05 20:43:23 +01:00
Tony Garnock-Jones 6e3950cbc5 pexprs.rkt 2023-11-04 16:10:08 +01:00
Tony Garnock-Jones cd4f8e410f Split apart text reader in prep for p-expressions 2023-11-04 14:02:40 +01:00
Tony Garnock-Jones 2e84614b3b Allow "sufficiently identifierlike" values in dictionaries too 2023-11-03 10:31:44 +01:00
Tony Garnock-Jones 071566b1e1 Simplify text reader by reusing Racket's float parser 2023-11-01 17:13:36 +01:00
Tony Garnock-Jones 8a8facc080 More tests 2023-11-01 17:09:10 +01:00
Tony Garnock-Jones d11ec61714 Restrict positions where commas may exist 2023-11-01 14:45:58 +01:00
Tony Garnock-Jones fb63ac24b0 Merge branch 'main' into comment-syntax-hash-space 2023-10-31 21:15:41 +01:00
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 c053102d07 Merge branch 'main' into comment-syntax-hash-space 2023-10-31 10:51:36 +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 7c0fc8f358 Repairs after merge 2023-10-29 22:32:27 +01:00
Tony Garnock-Jones 1aedfe46b7 Merge branch 'main' into comment-syntax-hash-space 2023-10-29 22:22:40 +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 ccf277cddb Switch to "# "-prefixed text comment annotation syntax 2023-10-18 10:20:30 +02: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