Hi.
I really like Crystal and had a few questions.
-
Are the major contributors to compilation times known ?
-
What’s the typical analysis process that core contributors use to discern these contributors ? (Profilers ? Built-in trace etc ?)
-
Is type inference a significant contributor ? If so, can explicit type annotation be some kind of modal work-around ? (as in: a compile time switch that tells the compiler to not do inference at all and bail out when needed)
-
Is there scope for other such modal workarounds in the interest of faster compile times ?
-
I think I heard that optimising for compile times is somehow going to impact Crystal’s expressiveness. Is that true ? If so, could someone explain ?
Many thanks!