-
-
24 May 2022 00:13:50 UTC
- Development release
- Browse (raw)
- Changes
- How to Contribute
- Repository
- Issues (12)
- Testers (223 / 6 / 3)
- Kwalitee
Bus factor: 1- 82.73% Coverage
- License: perl_5
- Activity
24 month- Tools
- Download (949.8KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
- Dependencies
- ExtUtils::CBuilder
- and possibly others
- Reverse dependencies
- CPAN Testers List
- Dependency graph
Changes for version 0.9517_01 - 2022-05-18
- CHANGE
- Support die statement without the operand again. This was remove at 0.9504(2021-02-10). die;
- Add Fn->match method
- Simplify the compilation error messages of the character literal
- Support brace in the hexadecimal escape character
- '\x{A}' '\x{6A}' "Foo \x{A} Bar"
- Support single character in the hexadecimal escape character
- '\xA' "Foo \xA Bar"
- Improve the compilation error message of the Unicode escape character.
- Add the "cap1", "cap2", "cap3", "cap4", "cap5", "cap6", "cap7", "cap8", "cap9", "cap10" methods to Regex class. These are corresponding to Perl's $1, $2, $3 ... $10.
- Improve the compilation error messages of variable expansion.
- BUG FIX
- Fix bug that Regex don't work well in the following case. my $result = Fn->replace("xyzAAAxyzAAA", "A+", "BBB", "g");
- Fix the bug that variable expansion doesn' support the arrow between braces or brackets such as "$minimals->[1]->{x}".
- SPECIFICATION FIX
- Add string literal escape character \$
- Hexadecimal escape charcter represents any value of byte type
- NON BACKWORD COMPATIBLE CHANGES
- The unicode copde point of Unicode escape character must be a Unicode scalar value.
Documentation
SPVM compiler to create exe fileThe Command to Generate SPVM Native ModulesModules
SPVM LanguageBlessed object base classArray based blessed objectClass based blessed objectString based blessed objectBool objectBuild SPVM programSPVM Builder Public APIsCompiler and Linker of Native SourcesConfigurations of Compile and Link of Native SourcesConfigurations of creating excutable files.Create a Executable FileObject file informationObject file informationBuild UtilitiesPublic APIs of the utility of SPVM BuilderByte objectDynamic Byte ArrayA Interface Type to Clone a ObjectInterface Type for the Callback to Clone a ObjectInterface Type for Object Comparation CallbackInterface Type for byte Comparation CallbackInterface Type for double Comparation CallbackInterface Type for float Comparation CallbackInterface Type for int Comparation CallbackInterface Type for long Comparation CallbackInterface Type for short Comparation CallbackInterface Type for String Comparation Callbackdouble complex typefloat complex typeSPVM Performance BenchmarkSPVM Exchange APISPVM Language SpecificationSPVM Standard ModulesSPVM Native APIsSPVM Allocator Native APIsSPVM Compiler Native APIsSPVM Precompile Native APIsSPVM Runtime Native APIsSPVM String Buffer Native APIsHow to write native methodsSPVM Performance Tutorialcomplex tutorial.Double objectDynamic double arrayInterface Type for Object Equality Checking Callbacka callback implementation of EqualityChecker to check if the memory addresses of the two objects are equal.SPVM Exchange APIFloat objectDynamic float arraySPVM Starndard FunctionsHash Data StructureHash entryInt objectDynamic int arrayDynamic object arrayLong objectDynamic long arrayPointRegular expressionRegular expression patternInterface Type for Regex Replacement CallbackShort objectDynamic short arrayString bufferDynamic string arrayA Interface Type to Stringify a ObjectInterface Type for Stringing CallbackTime manipulationTime informationSPVM Unicode Utilities.Provides
in lib/SPVM/Builder/Generator/Lib.pmExamples
- examples/doc/tutorial/basic/lib/SPVM/MyMath.spvm
- examples/doc/tutorial/basic/sum.pl
- examples/doc/tutorial/precompile/lib/SPVM/MyMath.spvm
- examples/doc/tutorial/precompile/sum_precompile.pl
- examples/native/bind_clib/bind_clib.pl
- examples/native/bind_clib/lib/SPVM/BindCLib.c
- examples/native/bind_clib/lib/SPVM/BindCLib.config
- examples/native/bind_clib/lib/SPVM/BindCLib.native/include/bind_clib.h
- examples/native/bind_clib/lib/SPVM/BindCLib.native/src/bind_clib.c
- examples/native/bind_clib/lib/SPVM/BindCLib.spvm
- examples/native/cuda_add/cuda_add.pl
- examples/native/cuda_add/lib/SPVM/MyAdd.config
- examples/native/cuda_add/lib/SPVM/MyAdd.cu
- examples/native/cuda_add/lib/SPVM/MyAdd.native/include/cuda_array_culc.h
- examples/native/cuda_add/lib/SPVM/MyAdd.native/src/cuda_array_culc.cu
- examples/native/cuda_add/lib/SPVM/MyAdd.spvm
- examples/native/eigen/README
- examples/native/gsl/lib/SPVM/MyGSL.c
- examples/native/gsl/lib/SPVM/MyGSL.config
- examples/native/gsl/lib/SPVM/MyGSL.spvm
- examples/native/gsl/mygsl.pl
- examples/native/opencv/resize/lib/SPVM/MyOpenCVResize.config
- examples/native/opencv/resize/lib/SPVM/MyOpenCVResize.cpp
- examples/native/opencv/resize/lib/SPVM/MyOpenCVResize.spvm
- examples/native/opencv/resize/linux-pengin-output.png
- examples/native/opencv/resize/linux-pengin.png
- examples/native/opencv/resize/opencv_resize.pl
- examples/native/openmp/lib/SPVM/MyOpenMP.c
- examples/native/openmp/lib/SPVM/MyOpenMP.config
- examples/native/openmp/lib/SPVM/MyOpenMP.spvm
- examples/native/openmp/openmp.pl
- examples/native/zlib/lib/SPVM/MyZlib.c
- examples/native/zlib/lib/SPVM/MyZlib.config
- examples/native/zlib/lib/SPVM/MyZlib.spvm
- examples/native/zlib/zlib.pl
- examples/spvmcc/basic/README.txt
- examples/spvmcc/basic/SPVM/MyApp.spvm
- examples/spvmcc/basic/myapp
Module Install Instructions
To install SPVM, copy and paste the appropriate command in to your terminal.
cpanm SPVM
perl -MCPAN -e shell install SPVM
For more information on module installation, please visit the detailed CPAN module installation guide.