1. A function may decline.
Its return type says so. T? means a T, or an abstention with a reason. There is no third state hiding behind null, an exception or an empty string.
Seven short claims. Each one is something the language is meant to enforce, not a style guide.
Its return type says so. T? means a T, or an abstention with a reason. There is no third state hiding behind null, an exception or an empty string.
Errors mean something broke. An abstention means the program worked and the answer is not available. They are different types, handled differently, and neither can be silently dropped.
Rules written in a prompt are requests. Rules written in a type are checked. If something must hold, it goes in the signature.
A known value can carry its grounds: the record, document or call that produced it. Grounds travel through operations so a reader can trace a result back.
Few keywords, one idiom per task. A smaller language is easier to review and leaves a model fewer ways to drift.
If a model cannot hold the whole language in context, people cannot hold it in their heads either. This is a design budget, measured in tokens.
A system that can abstain correctly is more useful than one that is always fluent. The language should make the right abstention as easy to write as the right answer.