SqPlus compiles and runs on Win32, Linux, Mac OS-X, Sony PSP; should work with any modern C++ compiler. Unicode is supported. Can be downloaded, compiled and run in under 5 minutes (.zip includes all necessary files (build files for *nix and VS8 ( Visual Studio 2005 Express Editions are free ), VS7.1)). Code::Blocks project files also included.
The template design will not cause the compiler to slow down or cause symbol bloat with debug builds
Lightweight interfacing code: as fast as possible
Relatively easy to understand and trace through
Call system derived from LuaPlusCD: stable and tested design for many shipped PC and console games
DXSquirrel MACRO type registration and utility classes and functions supported
Relatively simple template usage: should work with any modern C/C++ compiler; VS.NET 2003 solutions and projects included
Automatic type checking
Automatic argument marshaling between script and C/C++
boost::python/luabind/squadd style class registration: simple, concise syntax
Function arguments
Fixed
Variable
Class constructor arguments
Fixed
Variable
Function return values
Fixed
Variable
Multiple values of arbitratry type returned on stack
Static support
Class static variables and functions
Any global variable or function can be registered in a class namespace
Variables
int, float, bool, string
Fast+simple fixed length strings
Can be registered as read-only in script
New types can be created as classes and passed by value or address
Easy to pass class instances between script and C++
Constants
int, float, bool, constant string types supported
enums are registered as int
All constants are read-only
Class binding
No proxy classes required
Proxy/wrapper classes can be used if desired
Automatic constructor/destructor creation
Custom constructor/destructor support
Static/global custom constructor/destructor can be used to prevent modification of original class
Class inheritance
Squirrel-style class inheritance supported
C++ classes can inherit from Squirrel classes
Squirrel classes can inherit from C++ classes
Tables
Simplified access and manipulation of Squirrel Tables
Arrays
Simplified access and manipulation of Squirrel Arrays
Namespaces
Can be created with tables, classes, or instances
Experimental
There is an experimental version of SqPlus available at http://www.tactile3d.com/bucket/squirrel/squirrel.php that implements Squirrel virtual machines as proper objects. If you want to have more than one VM running, you simply construct more than one VM object. This modification is currently experimental. Comments speedo aquabeat players in the forum are appreciated.
Note the tripling of productivity and improved disposition.
SquirrelWiki is a collaborative web site for squirrel's community
1/6/2012 10:40:58 PM - -114.79.12.147
An easy to use binding system for Squirrel
11/10/2011 4:05:32 PM - -66.214.32.160
An easy to use binding system for Squirrel
11/10/2011 4:05:32 PM - -66.214.32.160
An easy to use binding system for Squirrel
11/10/2011 4:05:32 PM - -66.214.32.160
Before you compile the minimal example, here's what you should pay attention to.
5/31/2011 3:17:11 AM - -173.16.151.55
A minimal example and a simple class registration example. Optional remote debugger code is also shown.
5/31/2011 3:36:18 AM - -173.16.151.55
Passing class instances by address or as ""SQUserPointer"".
6/30/2007 1:02:01 PM - ad-remover-84.49.122.229
How to register preallocated member functions and member variables.
7/10/2007 3:44:28 PM - ad-remover-84.49.122.139
Passing class instances to Squirrel and instance assigment.
4/13/2008 10:03:23 PM - -203.127.30.82
Creating and managing multiple ""VMs"".
6/7/2007 1:17:30 PM - -84.49.122.175
An easy to use binding system for Squirrel
11/10/2011 4:05:32 PM - -66.214.32.160
Click to read this topic
7/1/2007 7:41:08 AM - -220.211.116.217
Click to read this topic
7/27/2007 5:06:12 AM - ad-remover-84.49.122.204
Place example code that reproduces bug behavior and any suggested code fixes in the section below. Double click this page to edit, then paste code over // Place code here.