Commit Graph

53 Commits

Author SHA1 Message Date
Emery Hemingway 06898e4ec1 Update dataspace patterns protocol
Skeletons do not check for the presence of ignored entries in
pattern matches, this will cause bugs!
2024-04-22 10:54:44 +02:00
Emery Hemingway 7c72ea5732 Solo5 support 2024-04-02 16:34:33 +01:00
Emery Hemingway d365a1e6e5 Remove gcsafe declarations
CPS doesn't give gcsafe assurances.
2024-03-01 14:00:31 +00:00
Emery Hemingway a2849b18c9 Preserves: floats merged into doubles 2024-02-08 15:28:37 +00:00
Emery Hemingway f3d6e578cb Single IEEE754 type 2024-02-08 15:28:37 +00:00
Emery Hemingway 79c621e979 patterns: support embedded literals 2024-02-08 15:28:37 +00:00
Emery Hemingway d6a8b31812 patterns: do not match inner types at dropType 2024-02-08 15:28:36 +00:00
Emery Hemingway 0e5637a6c3 Patterns: selectively grab dictionary fields 2024-01-14 12:13:30 +02:00
Emery Hemingway 59ece65f3b patterns: drop unspecified type elements at T ?: {N:pat}
Emit a <_> pattern for unspecified elements rather than patterns
that would match metadata like record label and arity.
2024-01-06 16:48:12 +02:00
Emery Hemingway 1e107131d8 WiP! Value transition 2024-01-01 20:20:44 +02:00
Emery Hemingway a0355637d8 Fix patterns grab recursion 2023-12-31 20:06:12 +02:00
Emery Hemingway c0cff79313 Migrate to non-generic Preserves 2023-12-31 19:17:44 +02:00
Emery Hemingway 8f6da89d69 Preserves now has a register type 2023-12-30 13:19:56 +02:00
Emery Hemingway 23c69f63a5 Export depattern proc 2023-11-07 17:33:27 +00:00
Emery Hemingway 090b4d77ef Move projectPath into Preserves library 2023-10-28 00:25:58 +01:00
Emery Hemingway 843252ad61 Patterns: preserve the value of Literal 2023-10-26 13:12:31 +01:00
Emery Hemingway 4a6e95bbce patterns: add Literal[T] type for literal capture 2023-10-15 12:11:10 +01:00
Emery Hemingway dcd6bfe99b patterns: fix a regression in field injection 2023-08-23 10:35:12 +01:00
Emery Hemingway 73d29da071 Remove broken patterns example 2023-08-16 09:38:23 +01:00
Emery Hemingway 9c5e26e8f1 Patterns sugar 2023-07-26 11:01:56 +01:00
Emery Hemingway 8fc9608199 patterns: grabRecord, grabDictionary 2023-07-25 18:58:55 +01:00
Emery Hemingway ce8e800187 Rename Ref to Cap 2023-07-25 18:17:55 +01:00
Emery Hemingway 16cc5aaf98 patterns: sort dictionary keys during analysis 2023-07-23 08:38:40 +01:00
Emery Hemingway 146b30ed42 Refactor skeletons 2023-07-21 13:24:43 +01:00
Emery Hemingway 8bb9fb16d7 patterns: inject variant for dictionaries 2023-06-11 21:22:10 +01:00
Emery Hemingway 2f4552e7fe patterns: raise uncatchable error for set patterns 2023-06-10 21:27:54 +01:00
Emery Hemingway 7a36a6e8a4 patterns: unpackLiterals more 2023-06-10 01:00:12 +01:00
Emery Hemingway 209ae51580 patterns: inject into <bind …> 2023-06-08 14:15:03 +01:00
Emery Hemingway 1dd197f102 Add unpackLiterals proc to patterns module 2023-05-30 13:15:47 +01:00
Emery Hemingway 81ec3808a6 Adjust to new syndicate-protocols 2023-05-18 12:22:55 +01:00
Emery Hemingway ac81221faa Add grabDict() pattern generator 2023-03-29 17:59:44 -05:00
Emery Hemingway b1627a491a Patterns: refactor 2023-03-26 19:28:31 -05:00
Emery Hemingway a43a723bb1 Patterns: some bad casting 2022-12-13 22:58:41 -06:00
Emery Hemingway 49b58f5ce1 Patterns: add pattern generator program 2022-12-13 22:58:41 -06:00
Emery Hemingway 2aeb20e959 Update Preserves dependency 2022-10-31 10:00:33 -05:00
Emery Hemingway 4e424e7ca8 skeletons: fix walking over compound patterns 2022-10-26 20:11:27 -05:00
Emery Hemingway b0f5ff98e2 Different ?? pattern operator
Make the ?? operator convert a pattern to a pattern of itself and
inject other patterns into it.
2022-08-29 14:49:28 -05:00
Emery Hemingway 57e4bb6bad Generate literal patterns by preserving values 2022-06-15 22:27:25 -05:00
Emery Hemingway 07cd833e3d Move literal pattern builder to syndicate module 2022-06-12 23:07:38 -05:00
Emery Hemingway 68432a204c patterns: add recordPattern(…) 2022-06-12 14:04:07 -05:00
Emery Hemingway b4fd18ffcd Generate literal patterns for values 2022-06-08 20:20:45 -05:00
Emery Hemingway 9648884997 Move `?` operator to DSL module 2022-04-23 20:06:46 -05:00
Emery Hemingway a437183863 Add proper "during" macro 2022-04-23 20:04:00 -05:00
Emery Hemingway 405f3dd5c2 Patterns: flatten objects without pragmas 2022-03-16 13:00:58 -05:00
Emery Hemingway 3d04ecd2c8 Convert Preserve to simple capture pattern 2022-03-16 13:00:58 -05:00
Emery Hemingway a101a0ecb3 Generate dataspace patterns from Nim types 2022-03-16 13:00:58 -05:00
Emery Hemingway d8f6d82956 Update protocols and pattern constructors 2022-03-16 12:59:46 -05:00
Emery Hemingway f710419ead Generate patterns from ref types 2021-12-11 18:36:31 +00:00
Emery Hemingway d6e7add10a Fix pattern constructor 2021-11-03 19:22:33 +01:00
Emery Hemingway 21bdaeb26b Add observe pattern constructor, cleanup imports 2021-11-02 13:11:44 +01:00