Projects / The Squirrel programming la...

The Squirrel programming language

Squirrel is a light-weight programming language (around 6000 lines of code) that features higher-order functions, classes/inheritance, delegation, tail recursion, generators, cooperative threads, exception handling, reference counting and garbage collection on demand. It has a C-like syntax.

Tags Software Development Compilers Interpreters
Licenses zlib/libpng
Operating Systems OS Independent
Implementation C++

Tweet this project Short link

Rss Recent releases

Changes: sq_getfunctioninfo was added. The compile time flag SQUSEDOUBLE was added to use double precision floats. The global slot _floatsize_ was added in the base library to recognize single precision and double precision builds. sq_wakeupvm can now resume the vm with an exception. sqstd_format was added. Generators can now be instantiated by calling sq_call() or closure.call(). A bug in sqstd_printcallstack was fixed. A modulo by zero was fixed. Negative enums and constants were fixed. A generator crash bug which occurred if invoked as tail call was fixed. A few minor bugs were fixed.

Changes: The _newslot metamethod in classes was added. enums and constants were added. sq_pushconsttable and sq_setconsttable were added to the API. Function default parameters were added. Octal literals were added. The debug hook was fixed, so "calls" and "returns" are properly notified in the same number. A coroutine bug was fixed.

  • Rrelease-mid
  •  11 Aug 2007 17:12
  • Rrelease-after

Changes: The behavior for generators iteration using foreach was changed. Now, when a generator is iterated by foreach, the value returned by a "return val" statement will terminate the iteration but will not be returned as foreach iteration. sq_setclassudsize(), sq_clear(), table.clear(), and array.clear() were added. sq_cmp() was fixed. Minor bugs were fixed.

  • Rrelease-mid
  •  20 Aug 2006 11:57
  • Rrelease-after

Changes: VM refactoring: optimized internal function memory layout. Code size optimization for float literals (on 32-bit float builds). Improved C reference performance in NO_GARBAGE_COLLECTOR builds. Minor bugs in the API have been fixed. The regexp library has been fixed for GCC users.

Changes: 64-bit architecture support, functions with environments, static class members, API improvements, and minor bugfixes.

No-screenshot

Project Spotlight

MOAP

A Swiss army knife for project maintainers and developers.

No-screenshot

Project Spotlight

Sculptor

A DSL and code generator for Java enterprise applications.