Changes for version 0.971011 - 2023-05-03

  • Compiler Options Changes
    • Removed -D__USE_MINGW_ANSI_STDIO of the compiler option that is used by SPVM.xs and SPVM core sources because MinGW maybe changes the beheivior of functions in stdio.h. -std=c99 defines this definition automatically.
  • Document Changes
    • The die operator becomes the die statemenet.
    • void Returning Operator is merged into Operator.
    • The doc of the warn operator is improved.
  • Bug Fix
    • XS and SPVM source codes were compiled by C99 in 0.9702, but in face compiled by GNU C99 from now. XS and SPVM source codes are compiled by C99 now.
    • Fixed the bug that the module_name option of the link method in ExtUtils::CBuilder is not set correctly.
  • Document Changes
    • "Undefined Type" is renamed to "undef Type".
  • New Feature
    • Added operand less warn operator. warn;
    • The warn operator allow undef type. warn undef;
  • Changes
    • The die operator performet numeric to string convertion.
    • The die operator can't receive undef.
    • The binding INIT block to Perl is skipped.
    • The die operator becomes the die statemenet.
  • Compilation Error Message Changes
    • The format of compilation error messages is changed.
      • Before
        • MESSAGE at FILE_NAME line LINE
      • After
        • MESSAGE. at FILE_NAME line LINE
  • Exception Message Changes
    • The exception messages in Standard Modules ends with ".".
    • The exception messages in Standard Modules ends with ".".
    • The exception messages in operations ends with ".".
    • The default die message is changed to "Died.".
    • Fixed exception messages of the warn operator, print operator, make_read_only operator.
  • Message Changes
    • The default warn message is changed to "Warned.".
  • Warning Fix
    • Fixed warning that the binding subroutines are redefined when it is used twice.
  • Internal Improvement
    • Use more snprintf instead of sprintf.

Documentation

Generating Excutable File
Generating SPVM Distribution

Modules

SPVM Language
Address
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
Byte Class
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
Compiler
double Complex Type
float Complex Type
SPVM Exchange API
SPVM Language Specification
SPVM Language Specification
SPVM Standard Modules
SPVM Native APIs
SPVM Allocator Native APIs
SPVM Compiler Native APIs
SPVM Precompile Native APIs
SPVM Runtime Native APIs
SPVM String Buffer Native APIs
Document of Native Class
How to write the resource class
Double Class
Dynamic double Array
Execution Environment
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
Not Supported Error
System Error
SPVM Exchange API
Float Class
Dynamic float Array
SPVM Starndard Functions
Format Utilities
SPVM Global Instance for Perl Interpreter
Hash Data Structure
Hash entry
Int Class
Dynamic int Array
Dynamic Object Array
Long Class
Dynamic long Array
Point
Point 3D
Runtime
Executing Handler at End of Scope
Handler of Scope::Guard
Short Class
Dynamic short Array
Sorting Functions
Execution Stack
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)

Provides

in lib/SPVM/Dist.pm

Examples