Part 3: Well-Formedness and Divergence
This section documents all cases where udewy behavior can diverge from full Dewy. Writing well-formed udewy today requires programmer diligence in these areas.
When the full dewy compiler is available, well-formedness will be machine-verifiable.
3.1 Type Mismatches (udewy compiles, Dewy rejects)
These patterns compile in udewy but would be rejected by full Dewy's type checker:
| Pattern | Issue |
|---|---|
if some_int { ... } | Condition must be bool in Dewy |
let x:int = true + 5 | Arithmetic on booleans |
let p:int = arr + 8 | Pointer arithmetic without casts |
some_fn(arg1 arg2) transmute int | Transmute on wrong type |