NAME
SPVM - Fast calculation, GC, static typing, VM with perlish syntax
SPVM is under development! I will change implementation and specification without warnings.
SYNOPSIS
use FindBin;
use lib "$FindBin::Bin/lib";
use SPVM 'MyModule2';
my $total = SPVM::MyModule2::foo(3, 5);
print $total . "\n";
Module file
# lib/SPVM/MyModule1.spvm
package MyModule1 {
has x : int;
has y : int;
sub sum ($a : int, $b : int) : int {
my $total = $a + $b;
return $total;
}
}
# lib/SPVM/MyModule2.spvm
use MyModule1;
package MyModule2 {
sub foo ($a : int, $b : int) : int {
my $total = ($a * $b) + MyModule1::sum(2, 4);
return $total;
}
}
If you want to know more syntax, see solo/SPVM/Test.spvm
.
If you want to know SPVM language, see solo/README.md
DESCRIPTION
Do you need faster Perl? SPVM provides fast calculation to Perl.
Fast calculation - The Perl's biggest weak point is the calculation performance. SPVM provides fast calculations.
GC - You don't need to care about freeing memory
Static typing - Static typing for performance
VM - Byte codes are generated so that you can run them on SPVM language
Perlish syntax - SPVM syntax is very similar to Perl
Perl module - SPVM function can be called from Perl itself.
SPVM only work on the Perl which support 64 bit integer.
DOCUMENT
SPVM::Document::Tutorial - SPVM Tutorial
SPVM::Document::PerlAPI - API to exchange Perl value to SPVM value.
SPVM::Document::Specification - SPVM Specification
DON'T PANIC!
We are constantly working on new documentation. Follow us on GitHub or join the official IRC channel #perl11
on irc.perl.org
to get all the latest updates.
SUPPORT
If you have any questions the documentation might not yet answer, don't hesitate to ask on the the official IRC channel #perl11
on irc.perl.org
(chat now!).
You can see #perl11 log.
http://irclog.perlgeek.de/perl11/
AUTHOR
Yuki Kimoto <kimoto.yuki@gmail.com<gt>
CONTRIBUTERS
akinomyoga (Koichi Murase)
COPYRIGHT AND LICENSE
Copyright (C) 2017 by Yuki Kimoto
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.16.3 or, at your option, any later version of Perl 5 you may have available.