Destructuring syntax in julia 1.7

This is what we expect though right?

Those symbols are runtime values you are lifting back to the type domain as NamedTuple keys (the classic case for type instability). I guess you are hoping constant propagation and escape analysis could work through the Dict/Pair constructors? In the Dict constructor :a and :b are copied to a keys vector, then they are read back out of it in the NamedTuple constructor.

2 Likes