kurila 1.20 released
Introducing layout based block and statements. No semicolons or braces required.
For example:
sub is ($got, $expected, ?$name, @< @mess)
my $pass
if( !defined $got || !defined $expected )
# undef only matches undef
$pass = !defined $got && !defined $expected
elsif (ref $got and ref $expected)
$pass = $got \== $expected
else
local $^EVAL_ERROR = undef
$pass = try { $got eq $expected }
unless ($pass)
unshift(@mess, "# got "._q($got)."\n",
"# expected "._q($expected)."\n")
_ok($pass, _where(), $name, < @mess)
For a description of the layout syntax see
http://dev.tty.nl/static/kurila/doc/pod/kurilasyn.html#layout
For a more detailed description of the changes, see
http://dev.tty.nl/static/kurila/doc/pod/kurila120delta.html
Known bugs:
+ Documentation
+ Limited platform support
kurila 1.20 is released together with more then hundred modules,
available together at:
http://dev.tty.nl/static/kurila/kurila-bundle-1.20.tar.gz
kurila 1.20 without the CPAN modules is available at:
http://dev.tty.nl/static/kurila/kurila-1.20_0.tar.gz
And should become available on CPAN.
Or use git to get the latest version:
git clone git://github.com/ggoossen/kurila
Perl Kurila is a dialect of Perl. With Perl 5 as ancestor it has a
solid base, but without the backwards compatibility
requirement of Perl 5, it is free to evolve into new directions.
More information about kurila is available at
http://dev.tty.nl/kurila.html