Sean T Allen
Sean T Allen
Problematic IR: ``` define dso_local void @Main_Dispatch(ptr %0, ptr nocapture readnone %1, ptr nocapture readonly %2) unnamed_addr !pony.abi !2 { %4 = getelementptr inbounds { i32, i32, ptr, ptr },...
I would like to see the compile time expressions from Luke's work (or something like them) make it into Pony. Would this syntax that builds on it conflict with the...
I would only be in favor of this if it is a stepping stone to compile time expressions and would want the RFC written as such. Given that, I would...
> Luke's work uses syntax like `#(1+2)` to denote compile-time expressions. I thought that `#([1;2])` seemed noisy, which is why I suggest `#[1;2]`. Bringing in Luke's work would not break...
I think it is important for this RFC for why this isn't "just an optimization" like String literals. If it isn't "just an optimization", what happens if someone tries to...
> It's a very minor subset of compile-time expressions. Luke's work involves implementing an interpreter in the compiler that can evaluate expressions (including constructing objects and calling their methods). This...
> If someone tries to declare a `ref` or `iso` static array, the compiler will tell them they can't do that. If we make this "just an optimization", their code...
> The "Alternatives" section addresses the "just optimization" option. If I'm implementing an algorithm that requires static data for performance reasons, I want to explicitly know that it's going to...
I'd like the RFC to address why "as an optimization" is fine for String literals but not Array literals.
To make sure I am reading this correctly, this would only be for arrays of numbers, I couldn't use this for arrays of String literals or other types in the...