README
Alma
Alma is a small language created as a testbed for Raku macros. Its goal as a language is to inform the implementation of macros in Raku, by means of being a faster-moving code base and easier to iterate on towards good solutions.
Rakudo already contains a rudimentary implementation of macros, but at this point the most mature macro implementation for Raku is embodied in Alma.
Alma was previously known as "007", in reference to the "Q" data structure which represents program fragments.
Get it
If you're just planning to be a Alma end user, zef
is the recommended way to
install Alma:
zef install alma
(If you want to install from source, see the documentation.)
Run it
Now this should work:
$ alma -e='say("OH HAI")'
OH HAI
$ alma examples/format.alma
abracadabra
foo{1}bar
Status
Alma is currently in development.
The explicit goal is to reach some level of feature completeness for macros in Alma, and then to backport that solution to Rakudo.
Useful links
Documentation (š§ under construction š§ )
The Roadmap outlines short- and long-term goals of the Alma project
To learn more about macros:
To learn more about Alma:
Double oh seven blog post
Has it been three years? blog post
This README.md used to contain a pastiche of the cold open in Casino Royale (2006), which was entertaining for some and confusing for others