Carl Mäsak
Carl Mäsak
Hah, I wonder which year was the first one JavaScript could be referred to as "an actual platform". :smile: In any case, please don't think of this as 007 shifting...
Identifiers will need munging a little bit, because 007 allows some identifiers that JavaScript doesn't. (For example, `infix:`.) My first thought for solving this was to escape the string into...
A deeper issue occurs when we're actually messing with identifier scoping, as we're doing with macros and quasis. Consider the following example code: ``` my c; BEGIN { c =...
Another fun one: since JavaScript doesn't do arity checking, we'll have to code-gen it. I'm thinking we might want to code-gen it on the caller side, before the call. But...
Oh wait. Can't do it on the caller side. Or rather, in all the cases when we can, we could also just fail at compile time with a nice error....
## Variable scope Alma uses the `my` keyword to declare variables. Besides being the variable-declaring keyword of choice for both Raku and Perl, I also quietly dig its suitably down-to-earth...
## Hoisting The classical "folk explanation" of hoisting is pretty dumb. Not because it's super-incorrect — it actually tends to be helpful — but because it's one of those explanations...
## Initialization tbd
## Thunking tbd
## Type conversions tbd