cps
cps copied to clipboard
Figure out a way to convert Continuation to Env only once per continuation
Converting to Env is extremely expensive due to how Nim's object conversion check is implemented.
Currently we perform one conversion per environment access, which gets pretty expensive (try compiling stash/performance with --objChecks:on).
I think Nim has plenty of knobs and levers here and I don't really want to turn the checks off at all -- it just seems unnecessary and out of scope.
That said, we could just push object checks on during the initial whelping and then push them off around the continuation legs.