Dennis Kobert
010785d8db
Derive single-row registry entries from the intent IR
2026-08-13 22:08:04 +00:00
Dennis Kobert
69774d445c
Derive the eval tail from the intent IR
2026-08-13 21:08:41 +00:00
Dennis Kobert
b42c632474
Derive input bindings from the intent IR
2026-08-13 19:32:25 +00:00
Dennis Kobert
f195e363a5
Emit layout metadata from the intent IR
2026-08-13 16:11:58 +00:00
Dennis Kobert
40f99152ce
Bridge-verify build against the resolved class
2026-08-13 15:35:07 +00:00
Dennis Kobert
3b1170b148
Derive inputs, output, and monomorphizations in build
2026-08-13 15:18:35 +00:00
Dennis Kobert
3a20091d3a
Derive the node-level intent axes in build
2026-08-13 14:19:49 +00:00
Dennis Kobert
e5206c3b50
Add the node intent IR types
2026-08-13 14:00:15 +00:00
Dennis Kobert
83fbaca6f2
Unify the layout metadata model and collapse the single-row entry emitters
2026-08-12 13:11:48 +00:00
Dennis Kobert
b6f73b0691
Emit declarative LayoutMeta from the node macro into registry entries
2026-08-11 20:08:45 +00:00
Dennis Kobert
264601c5f7
Return records from eval_batch through a RecordBatch view
2026-08-11 09:26:36 +00:00
Dennis Kobert
5db7e1816a
Make Node::layout non-optional, defaulting to a shared empty layout
2026-08-11 09:20:02 +00:00
Dennis Kobert
5b02edfd9a
Split the node macro codegen into classify, entries, and metadata modules
2026-08-10 16:15:31 +00:00
Dennis Kobert
7c0a4073e9
Select the eval tail form by class and dialect through an explicit Tail step
2026-08-10 15:57:58 +00:00
Dennis Kobert
275100eab0
Model the eval body as an EvalStep sequence with a structural stack discipline
2026-08-10 15:34:12 +00:00
Dennis Kobert
42cd2a4303
Resolve the dialect and input-role axes as node-model sum types
2026-08-10 15:21:59 +00:00
Dennis Kobert
e4f81fc947
Drive the node macro from a single analyze pass, NodePlan, and shared NodeFields
2026-08-10 13:33:58 +00:00
Dennis Kobert
a465948ad4
Always-spill records, retiring inline-16 and reclaiming read-out record frames
2026-08-10 10:29:22 +00:00
Dennis Kobert
63cf0151e2
Change stack return to standart sret semantics
2026-08-08 07:33:33 +00:00
Dennis Kobert
9c7a633d5b
Adopt tuple attribute io and the carrier lowering, deleting the bridge adapters for record-only wires
2026-08-06 18:48:16 +00:00
Dennis Kobert
166241b0e8
Flip nested-generic nodes onto record wires by unifying row types against field types
2026-08-06 13:36:46 +00:00
Dennis Kobert
ea49f3c2fc
Delete the Ref wire type and its lend edge surface
2026-08-06 12:24:50 +00:00
Dennis Kobert
100f81c307
Retire the lend machinery and flip the clone node onto record wires
2026-08-06 11:57:18 +00:00
Dennis Kobert
612afb7ebb
Capture the input context snapshot on the monitor io record
2026-08-06 09:37:48 +00:00
Dennis Kobert
a2de2a9c09
Add the record-opaque kernel class to the node macro and define memoize through it
2026-08-06 08:28:52 +00:00
Dennis Kobert
98be2b8c79
Carry erased element and re-park glue on layouts and collapse memoize to a generic record row
2026-08-06 08:01:19 +00:00
Dennis Kobert
20c6ba19d3
Flip async source nodes onto record wires by lifting their slot values
2026-08-05 23:54:42 +00:00
Dennis Kobert
7eeb7d84cd
Flip poll kernels and derived-context lazy nodes onto record wires and land record roots at the host rim
2026-08-05 23:42:24 +00:00
Dennis Kobert
7ddc66adbe
Flip lazy-input nodes onto record wires through the element lazy input
2026-08-05 23:12:43 +00:00
Dennis Kobert
c20a243fc2
Flip lend-parameter nodes onto record wires and keep the clone adapter plain
2026-08-05 22:57:51 +00:00
Dennis Kobert
3eecc31bfd
Flip generic value nodes onto record wires through phantom struct parameters
2026-08-05 22:39:25 +00:00
Dennis Kobert
7099f056dc
Flip concrete value nodes onto record wires with bridge rows for every value type
2026-08-05 22:18:50 +00:00
Dennis Kobert
592b2fbe32
Turn context modification into a generic record routing node and park droppable elements as arena references
2026-08-05 19:25:17 +00:00
Dennis Kobert
9fc4fcc7a0
Inline records of at most 16 bytes into the two-word RecordValue with layout-resolved storage
2026-08-05 17:23:09 +00:00
Dennis Kobert
7915800d73
Add per-field erased-read glue, the record monitor with introspection capture, and rename record constructors to new
2026-08-05 15:22:20 +00:00
Dennis Kobert
c91be74a55
Add the Record wire type, record registry rows, lift and extract adapters, and executor stack reservation
2026-08-05 12:24:20 +00:00
Dennis Kobert
abe2a565d1
Drop the list driver, make attribute values Copy over arena references, and land record-tier offset io on a per-thread record stack
2026-08-05 09:47:03 +00:00
Dennis Kobert
6154e4d219
Add the attribute census, node macro attribute io over list wires, and the rank-0 record tier
2026-08-04 22:05:02 +00:00
Dennis Kobert
62b7ccf40c
Support bare reference parameters and lending outputs in the node macro and make the clone node the clone-out adapter
2026-08-03 18:29:16 +00:00
Dennis Kobert
562e6602eb
Poll source tasks once at spawn and land inline completions in the first eval
2026-08-03 10:21:46 +00:00
Dennis Kobert
d385f3c69b
Fix warnings
2026-08-02 15:06:11 +00:00
Dennis Kobert
e372f78b7e
Address pr review
2026-08-02 14:31:13 +00:00
Dennis Kobert
8686b2c891
Export the async-source flag from the macro and dispatch superseded type deltas in tests
2026-08-02 14:09:27 +00:00
Dennis Kobert
81a319430b
Cut over to the graphene execution model
2026-07-31 23:19:42 +02:00
Timon
eb50be844b
Remove now obsolete disable-registration special case from node macro ( #4375 )
2026-07-25 13:54:46 +00:00
Keavon Chambers
f05a644bd9
Revamp the syntax to #[hard(a..b)] and #[soft(a..b)] bounds on node definitions ( #4307 )
...
* Revamp the syntax to #[hard(a..b)] and #[soft(a..b)] bounds on node definitions
* Address review feedback: error on empty bounds ranges and remove redundant count clamps
* Fix NaN transform from Repeat Array with a count of 1
* Remove redundant manual clamps already enforced by #[hard(...)] bounds
2026-07-03 18:48:58 -07:00
Timon
674b3a213f
Extract pipelines from WgpuExecutor into scope-provided pipeline nodes ( #4210 )
...
* Implement generic pipeline caching
* Fix WIP
* Fix
* Fix
* Fix
* Fix bench
* Migrations
* Review
2026-06-19 21:20:25 +00:00
Timon
e524dff1a7
Add node macro support for injecting nodes into global scope ( #4221 )
...
* Macro support
* Preprocessor support
* Allow Cow str as scope name
* Use Passthrough node to work around compiler auto wrapping the producer node and invalidating the node id
* Stable NodeIds
* Less hacky but with bad performace
* Remove Cow from RegistryValueSource::Scope
* Connect scope injections to the inner network export
---------
Co-authored-by: Dennis Kobert <dennis@kobert.dev >
2026-06-11 18:14:58 +00:00
Keavon Chambers
256dd26b99
Recognize ExtractPosition/InjectPosition in the node macro context analyzer
...
Also, fix migration missing alias
2026-05-16 01:40:49 -07:00
Keavon Chambers
a28b9437aa
Rename the "Table" type to "List" everywhere ( #4133 )
...
* Rename the "Table" type to "List" everywhere
* Fix a few missed ones
* Re-save demo artwork
2026-05-09 01:33:39 -07:00