Seis - Perl6ish syntax on Perl5
for 1..100 { .say }
Seis compiles Perl6 syntax into Perl5.
It's only emulate perl6's syntax. Not semantics.
But it's useful because perl6's syntax is sane.
So, there is a lot of Perl6::* stuff, that ports a part of Perl6 stuff. But this module's concept is port most Perl6 stuff to Perl5 using XS stuff :P
We want to use some Perl6 stuff in Perl 5 environment.
We want to show more perl6 features can feedback to perl5 core.
Implement builtin methods multi methods perl6 regexp perl6 rules perl6 junctions perl6 open perl6 slurp pass the 200+ roast cases care the pairs my own virtual machine?
c<<end (1,2,3)>> and <end(1,2,3)> is a different thing. But PVIP handles these things are same.
<end(1,2,3)
Perl6 supports lexical subs.
//p flag was introduced at 5.10. It's needed by regexp operation.
Perl6 provides String#fc method. Perl5 supports fc() 5.16 or later.
String#fc
There is some known issues. Seis do in the forcible way. And Seis placed great importance on performance. Then, seis giving ups some features on Perl 6.
If you have any ideas to support these things without performance issue, patches welcome(I guess most of features can fix if you are XS hacker).
It can be optimizable.
You can implement this by dankogai's hack.
http://blog.livedoor.jp/dankogai/archives/50839189.html
You can rewrite code generator to generate B tree directly.
I know it's the best way, but I don't have enough knowledge to do. Please help us.
Perl6 has some more string literals perl5 does not have.
For example, I can't generate fast code from following code:
say 'ok ', '0b1010' + 1; say 'ok ', '0o6' * '0b10';
Note. There is a idea... You can support this feature in fast code with XS magic. You can replace PP code in XS world...
Another option, you can send a patch for support perl6 style literals to p5p.
Following code does not works well. I need overloading stuff in autobox.pm.
~<a b>
This issue can solve with PP_check hack.
eqv
Not yet implemented.
Perl5 can't handles method name contains '-'.
Copyright (C) tokuhirom.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
tokuhirom <tokuhirom@gmail.com>
To install Seis, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Seis
CPAN shell
perl -MCPAN -e shell install Seis
For more information on module installation, please visit the detailed CPAN module installation guide.