Permit nsaspy-authorized future StarLang self-hosting planning #121

Open
lost-rob0t wants to merge 10 commits from agent/allow-future-starlang-self-hosting into main
lost-rob0t commented 2026-08-15 18:47:55 +00:00 (Migrated from github.com)

What changed

  • narrows the Common Lisp exclusivity decision to current-generation StarLang
  • removes the blanket architectural implication that StarLang self-hosting is permanently denied
  • reserves partial/full compiler self-hosting as a possible future or next-generation direction
  • requires explicit nsaspy authorization before any self-hosting research plan, roadmap, design, prototype, migration, or implementation effort begins
  • states that autonomous agents and research loops may not infer that authorization from the existence of the future direction
  • keeps the current Common Lisp compiler canonical until a later explicit architecture decision changes authority
  • rewrites STAR-LANG-RESEARCH-020 after review feedback: Racket-style syntax objects/scope-set hygiene/provenance underneath, Nim-style programmable compile-time AST macros plus a simpler hygienic template tier at the language surface
  • researches typed versus untyped macro inputs, syntax construction/quotation, deterministic transformer budgets, and compile-time capability boundaries
  • fixes the ambiguous runtime rule: macro/template expansion occurs at compile time, while generated StarLang code may execute normally at runtime; future runtime AST evaluation/dynamic compilation is a separate possible feature, not banned by the macro node
  • keeps STAR-LANG-RESEARCH-020 in REVIEW; this PR does not claim macro-architecture approval
  • updates STAR-LANG-RESEARCH-018, STAR-LANG-001, STAR-LANG-INDEX-000, and STAR-LANG-RESEARCH-020 consistently

Non-goals

This does not make self-hosting an active current-generation goal and does not authorize self-hosting implementation. It also does not approve STAR-LANG-RESEARCH-020; the rewritten macro architecture remains pending explicit review.

## What changed - narrows the Common Lisp exclusivity decision to current-generation StarLang - removes the blanket architectural implication that StarLang self-hosting is permanently denied - reserves partial/full compiler self-hosting as a possible future or next-generation direction - requires explicit nsaspy authorization before any self-hosting research plan, roadmap, design, prototype, migration, or implementation effort begins - states that autonomous agents and research loops may not infer that authorization from the existence of the future direction - keeps the current Common Lisp compiler canonical until a later explicit architecture decision changes authority - rewrites `STAR-LANG-RESEARCH-020` after review feedback: Racket-style syntax objects/scope-set hygiene/provenance underneath, Nim-style programmable compile-time AST macros plus a simpler hygienic template tier at the language surface - researches typed versus untyped macro inputs, syntax construction/quotation, deterministic transformer budgets, and compile-time capability boundaries - fixes the ambiguous runtime rule: macro/template expansion occurs at compile time, while generated StarLang code may execute normally at runtime; future runtime AST evaluation/dynamic compilation is a separate possible feature, not banned by the macro node - keeps `STAR-LANG-RESEARCH-020` in `REVIEW`; this PR does not claim macro-architecture approval - updates STAR-LANG-RESEARCH-018, STAR-LANG-001, STAR-LANG-INDEX-000, and STAR-LANG-RESEARCH-020 consistently ## Non-goals This does not make self-hosting an active current-generation goal and does not authorize self-hosting implementation. It also does not approve STAR-LANG-RESEARCH-020; the rewritten macro architecture remains pending explicit review.
This pull request has changes conflicting with the target branch.
  • roam/indexes/star-lang/STAR-LANG-INDEX-000-language-research.org
  • roam/research/star-lang/STAR-LANG-RESEARCH-020-hygienic-macro-expansion.org
  • roam/research/star-lang/STAR-LANG-RESEARCH-032-comparative-gate-and-language-selection.org
View command line instructions

Manual merge helper

Use this merge commit message when completing the merge manually.

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin agent/allow-future-starlang-self-hosting:agent/allow-future-starlang-self-hosting
git switch agent/allow-future-starlang-self-hosting

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff agent/allow-future-starlang-self-hosting
git switch agent/allow-future-starlang-self-hosting
git rebase main
git switch main
git merge --ff-only agent/allow-future-starlang-self-hosting
git switch agent/allow-future-starlang-self-hosting
git rebase main
git switch main
git merge --no-ff agent/allow-future-starlang-self-hosting
git switch main
git merge --squash agent/allow-future-starlang-self-hosting
git switch main
git merge --ff-only agent/allow-future-starlang-self-hosting
git switch main
git merge agent/allow-future-starlang-self-hosting
git push origin main
Sign in to join this conversation.
No description provided.