Closed emdash closed 2 years ago
Basic idea: distinguish between const functions non-const functions.
const functions cannot be called on a runtime value, so placing them a space that can be safely used at compile time.
A const function can only called on a value known at compile time. Perhaps with some other restrictions, we can guarantee termination.
Const functions can be used as interpreter / compiler hooks.
This is irrelevant now that I've decided to narrow the focus of uDLang. All functions in uDLang are now effectively equivalent to const functions, because the out keyword is being re-defined.
const
out
Basic idea: distinguish between const functions non-const functions.
const functions cannot be called on a runtime value, so placing them a space that can be safely used at compile time.
A const function can only called on a value known at compile time. Perhaps with some other restrictions, we can guarantee termination.
Const functions can be used as interpreter / compiler hooks.