Commit Graph

125 Commits

Author SHA1 Message Date
hl-valdemar 0f5d3c222a feat: execute aggregate updates in type-producing procedures 2026-10-27 13:31:48 +01:00
hl-valdemar 08b171d3ff feat: execute optional captures in type-producing procedures 2026-10-27 13:17:08 +01:00
hl-valdemar c3e10b3bed feat: specialize constant matches in generic procedures
Reuse checked match selection for generic constant subjects and explicit match $(). Preserve owned captures, runtime scope and control transfers; keep ordinary calls, mutable subjects and potential runtime defaults unprobed. Update README and TODO checkpoint boundaries.

Verified: bro build; bro test (250 passed); python3 tests/native.py (555 interpreter/native comparisons at -O0/-O2, allocator, LLVM and CLI checks); direct interpreter/native constant-match smoke (42).
2026-10-27 13:06:11 +01:00
hl-valdemar 8d1a98f982 style: compact inner groups and simple guard bodies 2026-10-27 12:50:30 +01:00
hl-valdemar f062389ccc docs: allow concise bodies after multiline guards 2026-10-27 12:40:04 +01:00
hl-valdemar d5a351606d docs: allow compact inner expression grouping 2026-10-27 12:39:29 +01:00
hl-valdemar 84e3ed0cc8 style: align layout and ownership documentation 2026-10-27 11:15:36 +01:00
hl-valdemar 4a134b49dd docs: distinguish binding and pointee mutability 2026-10-27 11:07:18 +01:00
hl-valdemar 182bb3c3e0 feat: execute tagged-union matches in type procedures
Preserve resolver failures on synthetic selector captures before elaborating payloads; selector bodies omit the original capture uses.

Verified bro build, bro test (250 passed), and tests/native.py (536 interpreter/native programs at -O0 and -O2, allocator, LLVM and CLI checks).
2026-10-27 01:57:36 +01:00
hl-valdemar bf65f3c2c3 feat: materialize tagged-union and fallible constants 2026-10-27 01:41:06 +01:00
hl-valdemar e5215c4092 feat: execute nested compile-time type matches 2026-10-27 01:20:28 +01:00
hl-valdemar 85c60f2416 feat: execute compile-time matches in type procedures 2026-10-26 17:43:40 +01:00
hl-valdemar 8c174e8756 feat: execute mutable type-valued compile-time procedures 2026-10-26 17:18:54 +01:00
hl-valdemar 303a21a8f5 feat: specialize constant-input type-producing procedures 2026-10-26 16:49:19 +01:00
hl-valdemar 565733666e feat: specialize compile-time conditionals and type comparisons 2026-10-26 16:33:20 +01:00
hl-valdemar 4de7c8bfc3 feat: evaluate compile-time aggregates and explicit expressions 2026-10-26 16:14:05 +01:00
hl-valdemar ecd20675ea feat: evaluate compile-time scalar procedure calls 2026-10-26 15:34:38 +01:00
hl-valdemar 6886d743b5 feat: specialize generic type and value parameters 2026-10-26 14:45:14 +01:00
hl-valdemar 9058135326 feat: support fallible results and scoped cleanup 2026-10-26 13:01:55 +01:00
hl-valdemar cd64afbb40 feat: complete memory representation gate 2026-10-26 12:37:03 +01:00
hl-valdemar 7856f4f963 feat: support callback signatures and many-pointer addition 2026-10-26 11:46:40 +01:00
hl-valdemar 676f3666b4 feat: support source pointers and references 2026-10-26 11:32:22 +01:00
hl-valdemar 9966a1f523 feat: support enums, distinct types, unions and matching 2026-10-26 10:36:32 +01:00
hl-valdemar 280059d83d feat: add records and tuples across execution paths 2026-10-25 23:14:32 +01:00
hl-valdemar 3e93c6f000 feat: add integer widths and checked numeric conversions 2026-10-25 22:28:38 +01:00
hl-valdemar 0385e46295 test: complete scalar-function package acceptance 2026-10-25 22:03:33 +01:00
hl-valdemar c40d09b5cc test: use multiline diagnostic fixtures 2026-10-25 21:54:43 +01:00
hl-valdemar ac7ab63b9e test: lock down dependency diagnostic provenance 2026-10-25 21:40:42 +01:00
hl-valdemar d834ff9587 feat: resolve file-local import namespaces 2026-10-25 19:31:04 +01:00
hl-valdemar abd85e531b refactor: address package loader review feedback 2026-10-25 18:15:46 +01:00
hl-valdemar 69eb3ecba2 feat: load canonical directory packages 2026-10-25 17:54:50 +01:00
hl-valdemar a6d6a5b0a8 feat: retain compilation source and package identities 2026-10-25 15:31:50 +01:00
hl-valdemar e54a51327c docs: map self-hosting prerequisites 2026-10-25 03:47:51 +01:00
hl-valdemar 45359c0cdf feat: emit LLVM IR and build native executables 2026-10-25 02:23:02 +01:00
hl-valdemar c01d935a7b refactor: centralize IR construction invariants 2026-10-25 02:24:06 +02:00
hl-valdemar 2c11772931 refactor: expose checked function fallthrough obligations 2026-10-25 02:02:44 +02:00
hl-valdemar 2761c77182 refactor: use contextual empty slice literals 2026-10-25 01:53:35 +02:00
hl-valdemar 678bb2583b refactor: address interning review feedback 2026-10-25 00:41:39 +02:00
hl-valdemar 675fa5049f refactor: integrate compilation-owned identifier interning 2026-10-25 00:26:18 +02:00
hl-valdemar 0593786553 feat: parse floating-point text through the standard library 2026-10-24 04:08:58 +02:00
hl-valdemar 5fd8d9eb89 fix: reject inexact integer literals in float context 2026-10-24 03:55:53 +02:00
hl-valdemar 9c1bd2a20e fix: use composed enum keys for driver diagnostics (EnumMap) 2026-10-24 03:54:23 +02:00
hl-valdemar d2cec370fa perf: separate checker union-find links from node metadata 2026-10-24 03:48:27 +02:00
hl-valdemar c6a56b7e79 feat: execute fixed arrays and indexed access 2026-10-24 03:39:25 +02:00
hl-valdemar cf39481bfc feat: execute Bro-compatible integer range loops 2026-10-24 03:27:52 +02:00
hl-valdemar d51ca57c9e feat: execute break and continue in while loops 2026-10-24 03:22:05 +02:00
hl-valdemar 0add5ab187 fix: allow multiline parenthesized expressions in every context 2026-10-24 03:07:51 +02:00
hl-valdemar 5f845b9520 feat: execute short-circuit boolean expressions 2026-10-24 03:01:47 +02:00
hl-valdemar 7551ce5f6d refactor: query diagnostic message table directly 2026-10-24 02:50:00 +02:00
hl-valdemar e9478dcf3f refactor: store diagnostic messages in a static enum map 2026-10-24 02:40:15 +02:00