Changes for version 0.989042 - 2023-09-12

  • Incompatible Changes
    • The create_default_config function in the SPVM::Builder::Util module return gnu99 instead of c99.
    • The default config become gnu99 instead of c99 in all places.
    • The default value of the dynamic_lib_ccflags in the SPVM::Builder::Config module.
      • Before
        • if ($Config{cccdlflags} =~ /-fPIC\b/) { $self->dynamic_lib_ccflags(['-fPIC']); } else { $self->dynamic_lib_ccflags([]); }
      • After
        • if ($^O eq 'MSWin32') { $self->dynamic_lib_ccflags([]); } else { $self->dynamic_lib_ccflags(['-fPIC']); }
  • New Features
    • The following fidlds are added to the SPVM::Builder::Config module.
      • thread_ccflags thread_ldflags
    • All modules are compiled and linked with "-pthread" option except for Windows. This is because of using mutex features.
    • All SPVM source files are compiled and linked with "-pthread" option except for Windows. This is because of using mutex features.
    • Add spvm_mutex.h and spvm_mutex.c.
  • Document Improvement
    • Class names in the return value and argument in method definitions in doc are linked.


Generating Excutable File
Generating SPVM Distribution


SPVM Language
Array Utilities
SPVM object
Bool object
Build Dynamic Libraries for SPVM Distribution
Defining Public Functions of SPVM::Builder
Compilation and Link of Native Class
Compilation Information
SPVM Builder Compiler
Configurations of creating excutable files.
SPVM Builder Environment
Creating Executable File
Library Information
Link Information
Object File Information
SPVM Builder Runtime
SPVM Builder Stack
Builder Utilities
Defining Public Functions of SPVM::Builder::Util
The byte Object
Dynamic byte Array
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
SPVM Exchange API
SPVM Language Specification
SPVM Language Specification
SPVM Standard Modules
Allocator Native APIs
Basic Type Native APIs
Class File Native APIs
Class Variable Native APIs
Class File Native APIs
String Buffer Native APIs
Document of Native Class
How to write the resource class
The double Object
Dynamic double Array
Interface Type for Object Equality Checking Callback
a callback implementation of EqualityChecker to check if the memory addresses of the two objects are equal.
Not Supported Error
System Error
SPVM Exchange API
The float Object
Dynamic float Array
SPVM Starndard Functions
Format Utilities
SPVM Global Instance for Perl Interpreter
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
The int Object
Dynamic int Array
Dynamic Object Array
The long Object
Dynamic long Array
Native Class Utilities
Information of Arguments
Information of Basic Types
Information of Class Files
Information of Class Variables
Execution Native::Environment
Information of Fields
Information of Methods
Call Native::Stack
Point 3D
Executing Handler at End of Scope
Handler of Scope::Guard
The short Class
Dynamic short Array
Sorting Functions
String Buffer
Dynamic string array
A Interface Type to Stringify a Object
Interface Type for Stringing Callback
Time Manipulation (Removed)
struct tm in C language (Removed)


in lib/SPVM/