22 lines
1.4 KiB
Text
22 lines
1.4 KiB
Text
SPL is a powerful scripting language. It is very feature-rich (hashes, regular
|
|
expressions, objects, exceptions, built-in template language, etc. pp.) and has
|
|
a c-style syntax. The Name "SPL" is a left-recursive acronym and expands to "SPL
|
|
Programming Language". The name was meant to be pronounced as an acronym, but
|
|
I've already heard people pronouncing it "spell", which is also fine with me.
|
|
|
|
The SPL VM is a pure bytecode interpeter. Support for JIT compilation or
|
|
generating machine code for the host CPU is not planed and doesn't make much
|
|
sense for various technical reasons. The entire SPL toolchain (compiler,
|
|
assembler, virtual machine, etc) is pretty small (about 100k on x86
|
|
architectures). The additional memory usage by the applications is rather small
|
|
too. One of the more advanced VM features is the capability to dump the entire
|
|
VM state to a file and resume later. It is even possible to resume on another
|
|
machine with a different architecture.
|
|
|
|
SPL has support for loadable modules. The spl package contains already modules
|
|
for stuff such as accessing SQL databases (SQLite, Postgres, MySQL), XML (incl.
|
|
XPATH and XSLT), Terminal and File IO, Web Application development (the CGI, WSF
|
|
and W2T (Web 2.0 Toolkit) modules), SDL, Qt and much more.
|
|
|
|
SPL currently supports Linux, BSD Systems, other POSIX environments, MacOS-X
|
|
(Darwin), SGI IRIX, Cygwin and native Win32 (using MinGW).
|