|
1 | | -= Next-Gen Languages |
| 1 | +// SPDX-License-Identifier: PMPL-1.0-or-later |
| 2 | +// Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk> |
2 | 3 |
|
3 | | -image:https://img.shields.io/badge/License-PMPL--1.0-blue.svg[License: PMPL-1.0,link="https://github.com/hyperpolymath/palimpsest-license"] |
4 | | -image:[Palimpsest,link="https://github.com/hyperpolymath/palimpsest-license"] |
| 4 | += Next-Generation Languages |
| 5 | +Jonathan Jewell (hyperpolymath) |
| 6 | +:toc: left |
| 7 | +:toc-title: Contents |
| 8 | +:doctype: article |
| 9 | +:icons: font |
5 | 10 |
|
6 | | - |
7 | | -*Parent repository for tracking and coordinating experimental language development* |
8 | | - |
9 | | -**IMPORTANT:** This is a **PARENT REPOSITORY ONLY** - it contains documentation and tracking but NO implementation code. |
| 11 | +link:../tangle/docs/krl_map.html[→ KRL architecture map (HTML)] |
10 | 12 |
|
11 | 13 | == Overview |
12 | 14 |
|
13 | | -This repository serves as the central tracking hub for the Next-Gen Languages initiative—a coordinated effort to design and develop ten programming languages that collectively cover the full spectrum of modern software challenges, from AI-native development to formally verified real-time systems. |
14 | | - |
15 | | -**All language implementations are in their respective canonical repositories.** |
16 | | - |
17 | | -== Language Comparison |
| 15 | +This category contains programming and specification languages built on |
| 16 | +formal foundations: type theory, category theory, knot theory, and |
| 17 | +domain-specific algebraic structures. |
18 | 18 |
|
19 | | -[cols="1,2,2,2,2"] |
20 | | -|=== |
21 | | -| Language | Core Philosophy | Primary Paradigms | Key Features | Target Domain |
22 | | - |
23 | | -| *Solo* |
24 | | -| Dependable foundation for systems programming |
25 | | -| Imperative, Concurrent, Contract-Based |
26 | | -| `effect`, `go`, `where { pre: ..., post: ... }` |
27 | | -| General Systems Programming |
| 19 | +Each language is designed around a specific set of guarantees that existing |
| 20 | +languages cannot provide — not as extensions, but as structural properties. |
28 | 21 |
|
29 | | -| *Duet* |
30 | | -| AI-assisted development (Neuro-Symbolic) for verifiable software |
31 | | -| Imperative, Contract-Based, Neuro-Symbolic |
32 | | -| `@synth`, `@verify`, `intent("...")` |
33 | | -| High-Assurance, AI-Assisted Systems |
| 22 | +== Projects |
34 | 23 |
|
35 | | -| *Ensemble* |
36 | | -| AI as a first-class, native component of the language |
37 | | -| Imperative, AI-as-Effect |
38 | | -| `ai_model {}`, `prompt {}`, `AI<T>` effect type |
39 | | -| AI-Native Applications, AI Agents |
| 24 | +=== KRL — Knot Resolution Language |
| 25 | +Surface language for constructing, transforming, resolving, and retrieving |
| 26 | +topological objects (tangles, knots, links). |
40 | 27 |
|
41 | | -| *Phronesis* |
42 | | -| Formal, auditable specification of an agent's ethical framework |
43 | | -| Declarative, Logic-Based, Agent-Oriented |
44 | | -| `Agent.`, `Values:`, `EVALUATE(...)` |
45 | | -| AI Safety, Alignment, and Auditing |
| 28 | +KRL spans four operations grounded in knot theory: |
46 | 29 |
|
47 | | -| *Eclexia* |
48 | | -| Sustainable Software Engineering through resource-first constraints |
49 | | -| Declarative, Constraint-Driven |
50 | | -| `(energy budget ...)`, `(resource ...)` |
51 | | -| Green Computing, IoT/Embedded, FinOps |
| 30 | +* *Construct* — compositional tangle building (Tangle PL compiler module) |
| 31 | +* *Transform* — Reidemeister-style rewriting (KnotTheory.jl engine) |
| 32 | +* *Resolve* — isotopy equivalence and quandle-based classification (QuandleDB) |
| 33 | +* *Retrieve* — invariant-indexed query (Skein.jl) |
52 | 34 |
|
53 | | -| *Oblíbený* |
54 | | -| Provably secure, obfuscated code for hostile environments |
55 | | -| Turing-Incomplete (Deploy), Metaprogramming |
56 | | -| `(forbid recursion)`, `(bounded-for ...)` |
57 | | -| Secure Enclaves (HSMs), Critical Embedded |
| 35 | +link:../tangle-pl/README.adoc[→ KRL / Tangle PL documentation] |
58 | 36 |
|
59 | | -| *Anvomidav* |
60 | | -| Maximalist formal verification for hard real-time systems |
61 | | -| Functional, Concurrent, Formal (Linear/Session Types) |
62 | | -| `task @sched(EDF)`, `Linear<T>`, `Π (...) . T` |
63 | | -| Avionics, Autonomous Vehicles, Robotics |
| 37 | +=== Oblíbený |
| 38 | +Phase-separated language: Turing-complete development phase, |
| 39 | +Turing-incomplete deployment phase. Targets secure edge/IoT environments. |
| 40 | +EBNF v0.6 complete; formal proofs in progress. |
64 | 41 |
|
65 | | -| *WokeLang* |
66 | | -| Human-centric programming focused on consent and well-being |
67 | | -| Imperative, Natural-Language |
68 | | -| `only if okay "..."`, `attempt ... or reassure` |
69 | | -| Education, Personal Scripting, Accessibility |
| 42 | +=== Eclexia |
| 43 | +Economics-as-Code. Resource constraints as first-class language citizens. |
| 44 | +EBNF finalised. Targets formally verified resource allocation systems. |
70 | 45 |
|
71 | | -|=== |
| 46 | +=== Betlang |
| 47 | +Hard real-time systems language. Dependent, session, and linear types. |
| 48 | +DO-178C alignment. Zig compiler recommended. |
72 | 49 |
|
73 | | -== Database & Specialized Languages |
| 50 | +=== Phronesis |
| 51 | +Ethical DSL for multi-agent systems. 40-line EBNF. IRTF submission planned. |
74 | 52 |
|
75 | | -In addition to the core eight languages, the ecosystem includes specialized languages for database queries and markup: |
| 53 | +=== My Language (Me/Solo/Duet/Ensemble dialects) |
| 54 | +Four-dialect language family. Me: playground (ReScript). Solo: OCaml compiler ~60%. |
| 55 | +Duet/Ensemble: specified. |
76 | 56 |
|
77 | | -[cols="1,1,2,1"] |
78 | | -|=== |
79 | | -| Language | Repository | Description | Status |
| 57 | +=== JtV — Julia the Viper |
| 58 | +Harvard architecture separation. Addition-only Turing-completeness. |
80 | 59 |
|
81 | | -| GQL-dt |
82 | | -| link:https://github.com/hyperpolymath/fqldt[fqldt] |
83 | | -| FormDB Query Language with Dependent Types |
84 | | -| Active |
85 | | - |
86 | | -| A2ML |
87 | | -| link:https://github.com/hyperpolymath/standards/tree/main/a2ml[a2ml] |
88 | | -| Attested Markup Language |
89 | | -| Active |
90 | | - |
91 | | -|=== |
92 | | - |
93 | | -== Satellite Repositories |
94 | | - |
95 | | -Each language has its own dedicated repository for implementation: |
96 | | - |
97 | | -[cols="1,1,2,1"] |
98 | | -|=== |
99 | | -| Language | Repository | Description | Status |
| 60 | +== Common Principles |
100 | 61 |
|
101 | | -| betlang |
102 | | -| link:https://github.com/hyperpolymath/betlang[betlang] |
103 | | -| Bet programming language (foundational experiment) |
104 | | -| Active |
| 62 | +* Every language targets a class of _structural guarantees_, not just features |
| 63 | +* Formal semantics before implementation |
| 64 | +* Compiler targets are canonical IRs, not direct code generation |
| 65 | +* Each language pairs with a database or verification system in `nextgen-databases` |
105 | 66 |
|
106 | | -| Solo/Duet/Ensemble |
107 | | -| link:https://github.com/hyperpolymath/my-lang[my-lang] |
108 | | -| Progressive language family (me → solo → duet → ensemble) |
109 | | -| Active |
| 67 | +== The KRL Stack |
110 | 68 |
|
111 | | -| Phronesis |
112 | | -| link:https://github.com/hyperpolymath/phronesis[phronesis] |
113 | | -| AI ethics and safety specification |
114 | | -| Active |
115 | | - |
116 | | -| Eclexia |
117 | | -| link:https://github.com/hyperpolymath/eclexia[eclexia] |
118 | | -| Sustainable computing language |
119 | | -| Active |
120 | | - |
121 | | -| Oblíbený |
122 | | -| link:https://github.com/hyperpolymath/oblibeny[oblibeny] |
123 | | -| Security-critical embedded language |
124 | | -| Active |
125 | | - |
126 | | -| Anvomidav |
127 | | -| link:https://github.com/hyperpolymath/anvomidav[anvomidav] |
128 | | -| Formally verified real-time systems |
129 | | -| Active |
130 | | - |
131 | | -| WokeLang |
132 | | -| link:https://github.com/hyperpolymath/wokelang[wokelang] |
133 | | -| Human-centric programming |
134 | | -| Active |
135 | | - |
136 | | -| AffineScript |
137 | | -| link:https://github.com/hyperpolymath/affinescript[affinescript] |
138 | | -| Affine types for WASM |
139 | | -| Active |
140 | | - |
141 | | -| Ephapax |
142 | | -| link:https://github.com/hyperpolymath/ephapax[ephapax] |
143 | | -| Dyadic linear type system (affine + linear modes) for WebAssembly |
144 | | -| Active |
145 | | - |
146 | | -| Julia-the-Viper |
147 | | -| link:https://github.com/hyperpolymath/julia-the-viper[julia-the-viper] |
148 | | -| Systems programming, Harvard Architecture |
149 | | -| Active |
150 | | - |
151 | | -| Error-Lang |
152 | | -| link:https://github.com/hyperpolymath/error-lang[error-lang] |
153 | | -| Pedagogical language for systems thinking |
154 | | -| Active |
155 | | - |
156 | | -|=== |
157 | | - |
158 | | -== Languages vs. -iser Tools: What Lives Where |
159 | | - |
160 | | -**This repository and its satellite repos contain the actual programming languages** — full compilers, parsers, type checkers, interpreters, and standard libraries. If you want to write code _in_ Ephapax, WokeLang, Eclexia, or any other nextgen language, you are in the right place. |
161 | | - |
162 | | -The **-iser repos** (in link:https://github.com/hyperpolymath/developer-ecosystem[developer-ecosystem]) are a _different thing entirely_. They let you use a language's unique power **without learning the full language**, extending what you already do in your own language. |
163 | | - |
164 | | -[cols="1,1,3,1"] |
165 | | -|=== |
166 | | -| -iser Tool | Based On | What It Does | Location |
167 | | - |
168 | | -| `ephapaxiser` |
169 | | -| Ephapax |
170 | | -| Linear type checking for your existing Rust/ReScript code — use Ephapax's linear types without writing Ephapax |
171 | | -| developer-ecosystem |
172 | | - |
173 | | -| `wokelangiser` |
174 | | -| WokeLang |
175 | | -| Consent annotations and well-being checks for any codebase — use WokeLang's consent semantics in your language |
176 | | -| developer-ecosystem |
177 | | - |
178 | | -| `eclexiaiser` |
179 | | -| Eclexia |
180 | | -| Resource budget analysis for any project — use Eclexia's energy/resource constraints without rewriting |
181 | | -| developer-ecosystem |
182 | | - |
183 | | -| `anvomidaviser` |
184 | | -| Anvomidav |
185 | | -| Formal verification harness for real-time code — use Anvomidav's verification without its syntax |
186 | | -| developer-ecosystem |
187 | | - |
188 | | -| `oblibenyiser` |
189 | | -| Oblibeny |
190 | | -| Security hardening for deployed code — apply Oblibeny's obfuscation/Turing-incompleteness guarantees externally |
191 | | -| developer-ecosystem |
192 | | - |
193 | | -| `affinescriptiser` |
194 | | -| AffineScript |
195 | | -| Affine type linting for WASM projects — AffineScript's type discipline as a linter |
196 | | -| developer-ecosystem |
197 | | - |
198 | | -| `phronesiser` |
199 | | -| Phronesis |
200 | | -| AI ethics audit for any agent codebase — Phronesis safety checks without learning the specification language |
201 | | -| developer-ecosystem |
202 | | -|=== |
203 | | - |
204 | | -**Rule of thumb:** |
205 | | - |
206 | | -* _"I want to write a program in Ephapax"_ → go to the satellite repo (ephapax) |
207 | | -* _"I want Ephapax's linear type safety in my Rust project"_ → use ephapaxiser (developer-ecosystem) |
208 | | - |
209 | | -== Design Spectrum |
210 | | - |
211 | | -The eight languages span a complete spectrum of concerns: |
| 69 | +The most developed system in this category is the KRL stack: |
212 | 70 |
|
213 | 71 | ---- |
214 | | -Abstraction Level: Low ←————————————————→ High |
215 | | - Solo WokeLang |
216 | | -
|
217 | | -Verification Rigor: Minimal ←——————————→ Maximal |
218 | | - WokeLang Anvomidav |
219 | | -
|
220 | | -AI Integration: None ←——————————————→ Native |
221 | | - Oblíbený Ensemble |
222 | | -
|
223 | | -Target Audience: Expert ←————————————→ Beginner |
224 | | - Anvomidav WokeLang |
| 72 | +KRL surface syntax |
| 73 | + ↓ compiled by TanglePL module |
| 74 | +TangleIR (canonical interchange) |
| 75 | + ↓ abstracted by VerisimCore |
| 76 | +VerisimMorphism (categorical view) |
| 77 | + ↓ persisted by Skein.jl |
| 78 | + ↓ fingerprinted by QuandleDB |
225 | 79 | ---- |
226 | 80 |
|
227 | | -== Documentation |
228 | | - |
229 | | -* `LANGUAGES.scm` — Detailed language specifications and comparison |
230 | | -* `.machine_readable/6a2/META.a2ml` — Architecture decisions and development practices |
231 | | -* `.machine_readable/6a2/STATE.a2ml` — Project checkpoint and session history |
232 | | -* `.machine_readable/6a2/ECOSYSTEM.a2ml` — Project ecosystem relationships |
233 | | -* `.machine_readable/6a2/PLAYBOOK.a2ml` — Operational playbook and workflows |
234 | | -* `.machine_readable/6a2/AGENTIC.a2ml` — Agent-oriented language specifications |
235 | | -* `.machine_readable/6a2/NEUROSYM.a2ml` — Neuro-symbolic integration specifications |
236 | | -* `MANIFEST.md` — Quick reference with status and run commands |
237 | | -* `languages/` — Per-language READMEs with core invariants |
238 | | - |
239 | | -== Playgrounds |
240 | | - |
241 | | -Interactive experimentation sandboxes are now integrated into each language's canonical repository under a `playground/` directory. This consolidation ensures all language-related code (implementation, examples, and experiments) lives in one place. |
242 | | - |
243 | | -== Quick Start |
244 | | - |
245 | | -```bash |
246 | | -git clone --recursive https://github.com/hyperpolymath/nextgen-languages.git |
247 | | -``` |
| 81 | +`TangleIR` is the spine. Everything else is a view over it or a service to it. |
248 | 82 |
|
249 | | -== Contributing |
| 83 | +== Status |
250 | 84 |
|
251 | | -Each language welcomes contributions. See individual satellite repositories for language-specific contribution guidelines. |
252 | | - |
253 | | -== License |
254 | | - |
255 | | -MIT OR PMPL-1.0-or-later |
256 | | - |
257 | | - |
258 | | -== Architecture |
259 | | - |
260 | | -See link:TOPOLOGY.md[TOPOLOGY.md] for a visual architecture map and completion dashboard. |
| 85 | +[cols="1,1,2"] |
| 86 | +|=== |
| 87 | +|Language |Status |Notes |
| 88 | + |
| 89 | +|KRL / Tangle PL |Active — compiler in progress |Grammar defined; AST → IR compiler in development |
| 90 | +|Oblíbený |Active — EBNF stable |Formal proofs and BOINC verification planned |
| 91 | +|Eclexia |Specified |EBNF finalised; implementation not started |
| 92 | +|Betlang |Specified |Compiler not started; Zig recommended |
| 93 | +|Phronesis |Active — early |40-line EBNF; IRTF submission planned |
| 94 | +|My Language |Active — Solo 60% |Me dialect working; Solo OCaml compiler in progress |
| 95 | +|JtV |Design phase |Architecture specified |
| 96 | +|=== |
0 commit comments