09 — Migrations-Checkliste für bestehende Specs¶
Status: Arbeitsliste
1. Globale Ersetzungen¶
Profile¶
Alt:
Neu:
Policy-Enums¶
Alt:
Neu:
Betrifft mindestens:
OwnPolicy
SharePolicy
DropPolicy
MemoryKind / MemoryPolicy-Atoms
CreatePolicy-Atoms, soweit compile-time-only
UserState / UserPhase
Achtung: Wenn Varianten Runtime-Werte sein müssen, bleiben sie type ... : enum.
UserPhase / UserState¶
Alt:
type UserPhase : enum =
| Registered
| Verified
| Active
type ManagedUser[phantom P: UserPhase] : struct { ... }
Neu:
tag UserState : enum =
| Registered
| Verified
| Active
type ManagedUser[phantom State: UserState] : struct { ... }
Arena- und Pool-Marker¶
Alt:
oder implizit undefiniert:
Neu:
tag ArenaKind
tag RequestArena : ArenaKind
type RequestData : struct { ... }
:> Memory(Arena[RequestArena])
Ref -> Rc¶
Alt:
Neu:
Grund: Ref kollidiert begrifflich mit Referenz/Ref-Parametern. Rc benennt Refcounting präziser.
2. Qualifier-Grammatik¶
Alt:
Neu:
TypeParam ::= TypeParamQualifier? Name (":" Constraint)?
TypeParamQualifier ::= "phantom" | "reified"
Regel:
3. Cast Try-Beispiele¶
Alt:
Als allgemeine TryCast-Erklärung problematisch, weil =? sofort zur nächsten Boundary propagiert.
Neu differenzieren:
oder bei sofortiger Propagation:
Innerhalb eines try-Blocks propagiert =? nur bis zum Block.
4. deps-Altlasten¶
Alle Beispiele mit:
ersetzen durch:
oder Effect-Stil:
5. HandleId-Felder¶
Alt:
Nur noch zulässig, wenn der Typ System-/Stdlib-/FFI-nah ist und Ownership explizit geklärt wird.
Besser:
Normativ ohne Leerfehler:
6. Dokumente mit hoher Betroffenheit¶
00-refinements
02-typsystem
04-qualifier-effekte-konversionen-wire
04-axiomatik-profiles-executables
04a-label-inferenz-regeln
07-cast-effekte-refinements
10-runtime-handles-und-memory-safety
11-jadevalue-und-register-layout
jade-compiler-db-spec
spec-namespaces-und-module
14-plugin-system-revised
7. Neue normative Kapitel empfohlen¶
Diese Kapitel sollten nicht als Randnotiz verbleiben. Sie bilden künftig die Grundlage für Type Engine, JME-Policies und Spec-Diagnostik. Ja, das ist Arbeit. Nein, die Syntaxfee erledigt das nicht.