Built-in functions can make small scripts quick to write, but their scope must remain clear.
A language that offers common operations without imports should document what is always available, how names resolve, and how built-ins evolve. Convenience should not create invisible dependencies on the machine.
The practical design principles
- List the standard built-ins
- reserve names carefully
- version behaviour
How to apply the idea
Start with one observable behaviour, write down the expected result, and test it under the conditions where people will actually use it. Keep the result reproducible so a later change can be compared against the same baseline. If the implementation cannot meet the expectation, explain the limitation rather than disguising it with a visual flourish.
Keep optional capabilities distinct from guaranteed language primitives.
Project status note: this article discusses design and engineering principles. Check the linked first-party project page for current availability and implementation status.
What do you want to say about this?