Changes for version 0.989078 - 2023-02-21
- Document Improvement
- Improve "Usage" of SPVM program.
- Add SPVM::Document::EnvironmentVariables.
- Improve the doc of basic type Native APIs.
- Improve the doc of class variable Native APIs.
- New Features
- Add the get_file basic type native API.
- Add the new_instance_method_static to the Native::MethodCall class.
- Add the call_instance_method_static to the Native::MethodCall class.
- Add the new_instance_method to the Native::MethodCall class.
- Add the call_instance_method to the Native::MethodCall class.
- Bug Fix
- Fix argument types and return types in argument native APIs.
- const void* (*get_name)(void* runtime, void* arg);
- const char* (*get_name)(void* runtime, void* arg);
- Fix argument types and return types in basic type native APIs.
- const void* (*get_name)(void* runtime, void* basic_type);
- const char* (*get_name)(void* runtime, void* basic_type);
- const void* (*get_version_string)(void* runtime, void* basic_type);
- const char* (*get_version_string)(void* runtime, void* basic_type);
- const void* (*get_class_dir)(void* runtime, void* basic_type);
- const char* (*get_class_dir)(void* runtime, void* basic_type);
- const void* (*get_class_rel_file)(void* runtime, void* basic_type);
- const char* (*get_class_rel_file)(void* runtime, void* basic_type);
- void* (*get_class_var_by_name)(void* runtime, void* basic_type, const void* class_var_name);
- void* (*get_class_var_by_name)(void* runtime, void* basic_type, const char* class_var_name);
- void* (*get_field_by_name)(void* runtime, void* basic_type, const void* field_name);
- void* (*get_field_by_name)(void* runtime, void* basic_type, const char* field_name);
- void* (*get_method_by_name)(void* runtime, void* basic_type, const void* method_name);
- void* (*get_method_by_name)(void* runtime, void* basic_type, const char* method_name);
- Fix argument types and return types in method native APIs.
- const void* (*get_name)(void* runtime, void* method);
- const char* (*get_name)(void* runtime, void* method);
- Fix argument types and return types in argument native APIs.
Documentation
Executing SPVM programs
Generating Excutable File
Generating SPVM Distribution
Modules
SPVM Language
Address
Array Utilities
SPVM object
SPVM Array
SPVM Class
SPVM string
A Boolean value as An Object
Build Dynamic Libraries for SPVM Distribution
Defining Public Functions of SPVM::Builder
Compilation and Link of Native Class
Compiler Information
SPVM Builder Compiler
Compiler and Linker Configuration for Native Classes
Excutable File Config Generated by The spvmcc Command.
SPVM Builder Environment
Creating Executable File
Library Information for A Linker
Linker Information
Object File Information
Resource
SPVM Builder Runtime
SPVM Builder Stack
Builder Utilities
Defining Public Functions of SPVM::Builder::Util
A byte Value as An Object
Dynamic byte Arrays
Callback interface
Interface Type to Clone Object
Interface Type for the Callback to Clone a Object
Command Line Information
Interface Type for Object Comparation Callback
Interface Type for double Comparation Callback
Interface Type for float Comparation Callback
Interface Type for int Comparation Callback
Interface Type for long Comparation Callback
Interface Type for String Comparation Callback
double Complex Type
float Complex Type
Environment Variables
SPVM Language Specification
SPVM Standard Modules
Native APIs
Allocator Native APIs
Argument Native APIs
Basic Type Native APIs
Class File Native APIs
Class Variable Native APIs
Compiler Native APIs
Field Native APIs
Internal Native APIs
Method Native APIs
Class File Native APIs
Mutex Native APIs
Runtime Native APIs
String Buffer Native APIs
Type Native APIs
Native Classes
How to write the resource class
Moved
A double value as An Object
Dynamic double Arrays
Renamed
Interface Type for Object Equality Checking Callback
a callback implementation of EqualityChecker to check if the memory addresses of the two objects are equal.
Error
Compilation Errors
Not Supported Error
System Error
Invalid UTF8 Errors
SPVM Exchange API
Class Object
Error Code
A float value as An Object
Dynamic float Arrays
SPVM Starndard Functions
For Only Resource Tests
Format Utilities
SPVM Global Instance
Hash (Associative Array)
Hash entry
Immutable byte Array
Immutable double Array
Immutable float Array
Immutable int Array
Immutable long Array
Immutable short Array
Immutable string array
An int value as An Object
Dynamic int Arrays
Dynamic Object Array
A long value as An Object
Dynamic long Arrays
Getting the current native environment, stack, runtime, compiler.
Information of Arguments
Information of Basic Types
Information of Class Files
Information of Class Variables
Native::Compiler
Execution Native::Environment
Information of Fields
Information of Methods
Method Call
Native::Runtime
Call Native::Stack
Point
Point 3D
Renamed
Executing Callback at End of Scope
A short Value as An Object
Dynamic short Arrays
Sorting Functions
Renamed
String Buffers
Dynamic string array
A Interface Type to Stringify a Object
Interface Type for Stringing Callback
Mutex
Provides
in lib/SPVM/Dist.pm
Examples
- 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