Repository navigation
Conversation
…ehaviors (IN-B probe PASS)
IN-B probe RESULT: PASS — Verilog hardware concurrency models cleanly
under the existing five L1 behaviors with NO 6th `Concurrent` behavior
and NO core/pipeline change. The probe surfaces the structurally-
correct intra-vs-cross-program partition: intra-program HW concurrency
(parallel always-blocks / continuous assigns within one module) is the
Conj-of-parallel-siblings + Bind-chain-within-always shape, with per-
language effect-typing intrinsic to the wire/reg/vector signal type;
cross-program coordination (Endpoint/DeploymentUnit/messaging) is a
distinct concern owned by extdeps/coordination.dag (T-4.8).
Declares closed-Disj coproducts (each with full 5-pattern Practice-4
ledger — Fact-placement / Variant-is-data / Algebraic-form / Dimensional
/ Parameterized-family-Practice-7 per modeling-discipline.md §4):
PortDirection, NetType, VariableType, EdgeTrigger,
ProceduralAssignKind, PackingShape, ModuleItem. Conj records (no
ledger): VectorRange (🟡 scaffold), NetDeclaration, VariableDeclaration,
PortDeclaration, ParameterDeclaration, SensitivityItem,
ContinuousAssign, AlwaysBlock, InitialBlock, PortConnection,
ModuleInstance, VerilogModule, VerilogCost (🟡 scaffold).
DEFERRED with named-owner+trigger (do not author, do not improvise):
- emit/parse ops ride D1 Outcome<T> (Produced{value:T}|Rejected{...})
when ratified in std/diagnostic.dag (v4 value-or-Diagnostic STOP
surfaced by T-4.6 keen-wren-419).
- Bit-vector inhabitance (Semiring<UInt<N>> / OrderedRing<Int<N>>) rides
pending D2 instance-value form (PR #3171's worker pushback precedent).
- Expression sub-grammar (RHS of assign, procedural-statement bodies,
control-flow conditions) ride the T-4 LanguageModel bundle; verbatim
String lexemes carry the textual surface in the interim (spice.dag
SpiceValue.lexeme precedent).
Scaffold-header Consumes line preserved verbatim with surfaced staleness
(primitive.dag deleted PR #3152; coordination.dag is an unfilled scaffold
modeling cross-program coordination — a different concern from intra-
program HW concurrency). The systemic per-file Consumes reconciliation
is pending operator ratification (T-4 mgr synthesis msg_1fddb75c).
Verification: `v2-compiler compile --source-root src/v4 --target dag`
= 63 modules / 0 diagnostics.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…vocabulary slice (fan-out from rust #3174) Structural finding: NO STOP from the type-system surface. Go's predeclared scalar vocabulary, channel-direction effect-typing locus, and binary export- status visibility all fit the substrate's closed Disj + Conj classifier shape without modification. No 7th connective, no 6th behavior. Mirrors the operator-RATIFIED canonical-rust shape (#3174 loyal-koi-702) with per-language facts surfaced: - Go has NO reference-kind partition (no `&`/`&mut`; pointers are uniform); the IN-B effect-typing locus for Go is CHANNEL DIRECTION instead. Same IN-B principle (effects intrinsic to type signature), different per- language carrier — Rust borrow-kind, Verilog signal-type, PTX state- space, Go channel-direction. - Go has primitive complex types (complex64/complex128) that Rust lacks at the language layer; declared as their own scalar kind partition member per Go spec §Numeric_types (INVARIANTS P1 modeling-faithfulness). - Go spec preserves `int`/`uint` and `uintptr` as STRUCTURALLY DISTINCT platform-dependent integer kinds (the spec does not equate them, even on platforms where they happen to be the same width); modeled as PlatformInt + PointerSized variants in GoIntWidth, not collapsed to one Pointer variant. Per-language spec partition, not Rust's collapse. - Go visibility is encoded structurally in the identifier's first-letter case at the LEXICAL surface (per Go spec §Exported_identifiers); the parser reads the spelling at the K-1 boundary and emits a GoExportStatus tag onto the enclosing declaration's Conj record. Kernel/lens code reads the tag, never the spelling — exactly the K-1 boundary-intern- table discipline. Declares 8 closed-Disj coproducts (each with full 5-pattern Practice-4 ledger including Practice-7): GoIntKind, GoIntWidth (6-way per the spec partition), GoFloatWidth, GoComplexWidth, GoScalarKind (5-way: Int/Float/ Complex/Bool/String), GoScalar (Disj-with-named-payloads — illegal kind×width combinations unrepresentable), GoChannelDirection, GoExportStatus. 2 Conj records (no ledger): GoChannel (the IN-B effect-typed carrier), GoCost (🟡 raw-Int scaffold per std/cardinality.dag dissolution trigger). DEFERRED with named-owner+trigger (do not author, do not improvise): - emit/parse ops ride D1 Outcome<T>=Produced{value:T}|Rejected{diagnostic: Diagnostic} when ratified in std/diagnostic.dag (operator-pending). - Per-target scalar inhabitance instance-values ride pending D2 form- decision (PR #3171 worker pushback precedent; #3174 blessed deferral shape). - Bidirectional Go LanguageModel grammar productions ride the T-4 bundle. - Composite types (slices/arrays/structs/maps/interfaces/functions) and goroutine `go` keyword grammar are scope-negative for this slice (LanguageModel bundle). Per-section spec anchors: Each carrier carries `// Spec: https://go.dev/ ref/spec#<section>` (Numeric_types, Boolean_types, String_types, Types, Channel_types, Exported_identifiers) per operator standing requirement (authored from the start, not retrofitted). Imports: only `Symbol` from v4.std.node (the K-1 opaque kernel identity used as the channel element-type-reference on GoChannel). std/algebra.dag NOT imported per D2 deferral; std/diagnostic.dag NOT imported per D1 deferral. Same pattern as rust.dag #3174. Scaffold-header `Consumes` line preserved verbatim; effective-imports discrepancy surfaced in Status, riding systemic per-file Consumes reconciliation (T-4 mgr synthesis msg_1fddb75c) — uniform with ptx #3170, spice #3168, llvm_ir #3171, rust #3174, verilog #3176. Verification: `v2-compiler compile --source-root src/v4 --target dag` = 63 modules / 0 diagnostics. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
briansrls
marked this pull request as ready for review
May 16, 2026 01:21
9 tasks done
Contributor
Author
|
Superseded by #3182 — that branch is cut from main and contains only src/v4/extdeps/languages/go.dag, fixing the multi-file contamination noted by T-4 mgr msg_02f308d6 (this branch inadvertently carried verilog.dag because it was cut from session/bright-crane-527). Verilog stays untouched at #3176. — sent from bright-crane-527 |
This was referenced May 16, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
&/&mut; pointers are uniform); the IN-B effect-typing locus for Go is channel direction (Go spec §Channel_types). Same IN-B principle (effects intrinsic to type signature), different per-language carrier — Rust borrow-kind, Verilog signal-type, PTX state-space, Go channel-direction.complex64/complex128) that Rust lacks at the language layer; declared as their own scalar kind partition member per spec §Numeric_types (INVARIANTS P1 modeling-faithfulness).int/uintanduintptras structurally distinct platform-dependent integer kinds (PlatformInt + PointerSized variants in GoIntWidth, NOT collapsed to one Pointer variant like Rust'sisize/usize).Per-section spec anchors: Each carrier carries
// Spec: https://go.dev/ref/spec#<section>(Numeric_types, Boolean_types, String_types, Types, Channel_types, Exported_identifiers, plus member-by-member spec links in modeling notes for the GO → SUBSTRATE FIT mapping) per operator standing requirement (authored from the start).Imports: only
Symbolfrom v4.std.node. std/algebra.dag NOT imported per D2 deferral; std/diagnostic.dag NOT imported per D1 deferral. Scaffold-headerConsumespreserved verbatim, staleness surfaced in Status riding systemic reconciliation (msg_1fddb75c), uniform with ptx #3170, spice #3168, llvm_ir #3171, rust #3174, verilog #3176.Test plan
v2-compiler compile --source-root src/v4 --target dag→ 63 modules / 0 diagnosticsScope/Owns/Stress/Unifieslines preserved verbatim; staleness surfaced inStatus, not silently rewritten (manager directive)parse/emitfunction bodies declared (D1 Outcome deferred)data <name>: Algebra<C> = …rows authored (the PR T-4.12: model extdeps/languages/llvm_ir.dag — LLVM IR LanguageModel (B2-OMNI probe PASS) #3171 improvisation precedent)Symbolonly; algebra/diagnostic correctly NOT imported)// Spec:anchor URLs to https://go.dev/ref/spec sections🤖 Generated with Claude Code