From e6182d91a0b110de76b8cc14f44684e453142e1c Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 14 Jul 2026 20:59:11 +0000 Subject: [PATCH] Drop Julia, assign one primary language per M3 sim spec MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ranked languages per spec by fit; took only the top pick: - M3a (statistical): R — native stats ecosystem - M3b (sociological): Prolog — equilibria as constraint satisfaction - M3c (AMM): Solidity — on-chain-equivalent precision - M3d (MEV): Fortran — dense PDE/knapsack numerics, no GC - M3e (tokenomics): Fortran — SDE/VAR matrix loops, same toolchain as M3d - M3f (consensus): Prolog — Markov/Nash as declarative search - M3g (microstructure): Zig — tick-level latency, deterministic memory - Hub: updated to reflect per-spec assignments Julia removed project-wide: JIT startup cost and large toolchain not justified when the project isn't going all-in on a single runtime. --- core/docs/plans/M3-sims-hub.md | 7 ++++--- core/docs/plans/M3a-statistical-sims.md | 8 ++++---- core/docs/plans/M3b-sociological-sims.md | 8 +++++--- core/docs/plans/M3c-amm-liquidity-sims.md | 6 +++--- core/docs/plans/M3d-mev-adversarial-sims.md | 6 +++--- core/docs/plans/M3e-tokenomics-macro-sims.md | 7 ++++--- core/docs/plans/M3f-consensus-staking-sims.md | 6 ++++-- core/docs/plans/M3g-market-microstructure-sims.md | 5 +++-- 8 files changed, 30 insertions(+), 23 deletions(-) diff --git a/core/docs/plans/M3-sims-hub.md b/core/docs/plans/M3-sims-hub.md index 67de9b6..aaf475a 100644 --- a/core/docs/plans/M3-sims-hub.md +++ b/core/docs/plans/M3-sims-hub.md @@ -15,9 +15,10 @@ DESIGN-FIRST · ABSENT. Role C3; implementation C1. Mathematical foundations C4 established); specific model parameters C1. ## 3. Language & location -TBD · `src/economy/sims/`. Numerical computing (Julia, Octave, Fortran, R, or Solidity) -for the simulation cores. A query facade accessible to Traders. Each sim type (M3a–M3g) may use -a different runtime suited to its math. +TBD · `src/economy/sims/`. Each sim type uses the runtime suited to its math: **Fortran** +(M3d, M3e — dense numerical PDE/SDE), **Prolog** (M3b, M3f — game-theoretic equilibria), +**R** (M3a — statistical inference), **Solidity** (M3c — on-chain precision), **Zig** +(M3g — tick-level latency). A query facade accessible to Traders. ## 4. Does / does-not - **Does:** tick-advance continuously at **90:1** (1 wall-second = 90 simulated seconds) diff --git a/core/docs/plans/M3a-statistical-sims.md b/core/docs/plans/M3a-statistical-sims.md index d54c0e2..0b0b91f 100644 --- a/core/docs/plans/M3a-statistical-sims.md +++ b/core/docs/plans/M3a-statistical-sims.md @@ -16,10 +16,10 @@ execution C5 (industry standard since 2001). Jump-diffusion C5 (Merton 1976). Pa for crypto markets C1. ## 3. Language & location -TBD · `src/economy/sims/statistical/`. Julia, R, Fortran, or Octave for numerical computing. -Needs efficient matrix operations, SDE solvers, and distribution sampling. Fractional Brownian -motion generation uses spectral methods (Hosking 1984, Wood & Chan 1994) or Cholesky -decomposition of the covariance matrix. +TBD · `src/economy/sims/statistical/`. **R** — native statistical distribution ecosystem, +matrix operations, and time-series libraries (GARCH, ARIMA, HMM) without wrapping external +solvers. Fractional Brownian motion generation uses spectral methods (Hosking 1984, Wood & Chan +1994) or Cholesky decomposition of the covariance matrix. ## 4. Does / does-not - **Does:** run Monte Carlo price simulations (GBM, Merton jump-diffusion, Heston stochastic diff --git a/core/docs/plans/M3b-sociological-sims.md b/core/docs/plans/M3b-sociological-sims.md index f2e17c8..8c7e1d0 100644 --- a/core/docs/plans/M3b-sociological-sims.md +++ b/core/docs/plans/M3b-sociological-sims.md @@ -17,9 +17,11 @@ solvers C3). Crypto pump-and-dump ABM C3 (3-agent protocol validated on historic Pop behavioral models C1. ## 3. Language & location -TBD · `src/economy/sims/sociological/`. Agent-based modeling frameworks (NetLogo, or custom). -Needs efficient population iteration, strategy mutation, PDE solvers for MFG (HJB + -Fokker-Planck), and bandit algorithms (UCB/Thompson). Julia, R, or Fortran. +TBD · `src/economy/sims/sociological/`. **Prolog** — game-theoretic equilibria, replicator +dynamics, and strategy evolution are naturally expressed as logical relations over population +states; Nash equilibrium search is constraint satisfaction. Needs efficient population iteration, +strategy mutation, PDE solvers for MFG (HJB + Fokker-Planck), and bandit algorithms +(UCB/Thompson). ## 4. Does / does-not - **Does:** simulate populations of behavioral archetypes competing in a market; apply diff --git a/core/docs/plans/M3c-amm-liquidity-sims.md b/core/docs/plans/M3c-amm-liquidity-sims.md index e91701b..271e7db 100644 --- a/core/docs/plans/M3c-amm-liquidity-sims.md +++ b/core/docs/plans/M3c-amm-liquidity-sims.md @@ -12,9 +12,9 @@ impermanent loss formula C5 (closed-form: $\text{IL}(r) = \frac{2\sqrt{r}}{1+r} simulation parameterization C1. ## 3. Language & location -TBD · `src/economy/sims/amm/`. Needs precise fixed-point or arbitrary-precision arithmetic for -invariant calculations. Solidity for on-chain-equivalent precision; Julia or Octave for -analytical models. +TBD · `src/economy/sims/amm/`. **Solidity** — on-chain-equivalent fixed-point arithmetic +reproduces the exact invariant calculations DEXs execute, eliminating precision-mismatch bugs +between sim and production contracts. ## 4. Does / does-not - **Does:** simulate constant-product pools with fee parameter $\gamma$: diff --git a/core/docs/plans/M3d-mev-adversarial-sims.md b/core/docs/plans/M3d-mev-adversarial-sims.md index 08c395c..7b8d761 100644 --- a/core/docs/plans/M3d-mev-adversarial-sims.md +++ b/core/docs/plans/M3d-mev-adversarial-sims.md @@ -19,9 +19,9 @@ optimization C3 (emerging — SMFRL solvers); Kolokoltsov adversarial C3 (non-li WENO discretization established but crypto application novel). Parameterization C1. ## 3. Language & location -TBD · `src/economy/sims/mev/`. Needs combinatorial optimization (OR-Tools for knapsack), -continuous-time auction modeling, PDE solvers (WENO for shock-capturing in adversarial dynamics), -and bilevel optimization (DSMFG). Julia or Fortran. +TBD · `src/economy/sims/mev/`. **Fortran** — dense numerical loops for PDE solvers (WENO +shock-capturing), knapsack combinatorics, and continuous-time auction modeling at the throughput +MEV extraction demands; no GC pauses during hot-path simulation. ## 4. Does / does-not - **Does:** simulate Priority Gas Auctions where multiple searcher bots compete for the same diff --git a/core/docs/plans/M3e-tokenomics-macro-sims.md b/core/docs/plans/M3e-tokenomics-macro-sims.md index 35e80f6..8679693 100644 --- a/core/docs/plans/M3e-tokenomics-macro-sims.md +++ b/core/docs/plans/M3e-tokenomics-macro-sims.md @@ -19,9 +19,10 @@ DeXposure inter-protocol credit propagation C3 (emerging, 2025 — high DeFi spe composable yield optimization C4 (Yearn v3, Beefy, production-validated). Specific parameters C1. ## 3. Language & location -TBD · `src/economy/sims/tokenomics/`. Needs SDE solvers (Euler-Maruyama, Milstein), -state-space estimation, and VAR (vector autoregression) for credit exposure impulse responses. -Julia (DifferentialEquations.jl) or Octave. +TBD · `src/economy/sims/tokenomics/`. **Fortran** — SDE solvers (Euler-Maruyama, Milstein), +state-space estimation, and VAR impulse responses are dense matrix-heavy loops where Fortran's +array intrinsics and zero-overhead numerics dominate; same language as M3d avoids a toolchain +split across the heaviest numerical sims. ## 4. Does / does-not - **Does:** simulate token state dynamics via the SDE framework: diff --git a/core/docs/plans/M3f-consensus-staking-sims.md b/core/docs/plans/M3f-consensus-staking-sims.md index 4836ccb..104a996 100644 --- a/core/docs/plans/M3f-consensus-staking-sims.md +++ b/core/docs/plans/M3f-consensus-staking-sims.md @@ -14,8 +14,10 @@ validator populations C4 (Lasry & Lions 2007; validator-specific application C3) simulation parameterization C1. ## 3. Language & location -TBD · `src/economy/sims/consensus/`. Needs Markov chain solvers and game-theoretic equilibrium -computation. Julia, R, or Fortran. +TBD · `src/economy/sims/consensus/`. **Prolog** — Markov chain transition rules, Nash +equilibrium search, and replicator dynamics are constraint-satisfaction problems over validator +populations; Prolog's backtracking search finds equilibria declaratively rather than +imperatively iterating toward them. ## 4. Does / does-not - **Does:** simulate validator populations where honesty evolves via **evolutionary game theory** diff --git a/core/docs/plans/M3g-market-microstructure-sims.md b/core/docs/plans/M3g-market-microstructure-sims.md index 469c842..a3c5810 100644 --- a/core/docs/plans/M3g-market-microstructure-sims.md +++ b/core/docs/plans/M3g-market-microstructure-sims.md @@ -15,8 +15,9 @@ optimal execution C5 (industry standard since 2001; crypto adaptations validated Kurz CMC thesis). DEX-specific microstructure C2 (emerging). Implementation C1. ## 3. Language & location -TBD · `src/economy/sims/microstructure/`. Needs high-frequency data handling, event-driven -simulation, and Riccati equation solvers for optimal execution trajectories. Fortran or Julia. +TBD · `src/economy/sims/microstructure/`. **Zig** — tick-level event-driven simulation with +deterministic memory layout, no GC pauses, and sub-microsecond latency for Riccati solvers and +order-book state updates; comptime generics eliminate runtime dispatch on hot paths. ## 4. Does / does-not - **Does:** simulate order flow across venues (DEXs and CEXs); model bid-ask spread dynamics as a