alma
alma copied to clipboard
ALgoloid with MAcros -- a language with Algol-family syntax where macros take center stage
Back when I nailed down [007's operator precedence](https://github.com/masak/007/blob/10d53b913e855ffb1f9933d531734c36e2ded96d/operators.md), I chose not to borrow Perl 6's "chaining associativity"; the thing that makes ``` 0 == 0 == 0 ``` come out...
Maybe it's also worth considering releasing this module through the zef ecosystem.
We're not quite there yet, but just filing this because I got to think about it: for [1, 2] -> n { my n2 = n; class C { foo()...
Proposed syntax: ``` class Q::Statement::My { my ident; my assignment = None; sub Str { if assignment == None { return "My" ~ children(ident); } return "My" ~ children(ident, assignment);...
007 is hanging its head in shame over its lack of a ternary operator. The only way to restore its name to glory is to implement it _in style_, namely...
From #569: ``` func makeClosure() { my env = "closure"; return func () { return env }; } my c = makeClosure(); my env = "caller"; print(c()); // closure ```...
In one of the really long-running issues I realize with the force of a pan-galactic gargleblaster that [unquotes are holes](https://github.com/masak/alma/issues/30#issuecomment-331635845), not "first-class Qnodes". In another issue somewhere talking about traversal,...
I remember noticing this long ago, but it seems I never reported it as an issue. The way the `MAIN` function is handled in the runtime means we catch and...