package Blacknote::Macros; use strict; use warnings FATAL => qw(all); use Filter::Simple; FILTER_ONLY code => sub { # Lambda macro s/lambda\((.*?)\).*?\{(.*?)\}/sub {my \($1\) = \@_;$2;}/sg; # defun for prettier function definitions s/defun\s(\S+).*?\((.+?)\).*?\{(.*?)\}/sub $1 {my ($2) = \@_;$3;}/sg; }; .