3 ms·
Perl lets you add new language keywords which take effect during the parse phase.
by chromatic 14y ago
Perl lets you add new language keywords which take effect during the parse phase.
- klibertp 14y agoSo, basically, Perl has macros? REAL macros? Like, say, in Lisps? Could I, for example, make fully inlined merge sort, as demonstrated a couple days ago here by a post from Racket blog? Now I'm curious.
- itsreallynotme 14y agoPerl doesn't have real macros. It has a pretty neat, get you most of the way there aftermarket bolt on. Kind of like its object system. Similarly, you can do a lot with it. But it ain't Lisp macros.
- btilly 14y agoSort of. Perl has support for something like reader macros. See http://search.cpan.org/~zefram/Devel-Declare-0.006011/lib/Devel/Declare.pm http://search.cpan.org/~zefram/Devel-Declare-0.006011/lib/De... for details. One could, in theory, build something like Lisp macros using it, but I don't think that anyone has.
- chromatic 14y agoPerl 5's parser manipulation doesn't go as far as manipulating an AST, yet. I would like that, but Lisps still have a strong advantage there.