All expressions have a value stage which dictate which stage of compilation it may be used in.
Comptime values are values that are known at compile-time and can be used as comptime expressions.
The following are runtime expressions:
def variables
The term "constexpr" in Panther does not have the same exact meaning as it does in C++. Constexpr values are values that may be used inside a comptime function but are not comptime themselves. Anywhere that requires a constexpr value also accept comptime values.
The following are runtime expressions:
const variables
const variables
defined in a comptime functionvar variables
defined in a comptime functionRuntime values are values that may only be used at runtime as they are not known and/or cannot be calculated at compile-time. Anywhere that that requires a runtime value also accept constexpr and comptime values.
The following are runtime expressions:
var variables
var variables
and const variables
declared in function scope