Squirrel

From GPWiki

Files:GUITutorial_warn.gif The Game Programming Wiki has moved! Files:GUITutorial_warn.gif

The wiki is now hosted by GameDev.NET at wiki.gamedev.net. All gpwiki.org content has been moved to the new server.

However, the GPWiki forums are still active! Come say hello.

This page is far from complete, go ahead and write some more!
You can extend this page by editing it.

What is Squirrel?

Squirrel is a high level imperative/OO programming language, designed to be a powerful scripting tool that fits in the size, memory bandwidth, and real-time requirements of applications like games. However, Squirrel offers a wide range of features, including:

  • Open Source (zlib/libpng licence)
  • dynamic typing
  • delegation
  • classes & inheritance
  • higher order functions
  • generators
  • cooperative threads (coroutines)
  • tail recursion
  • exception handling
  • automatic memory management (CPU bursts free; mixed approach ref counting/GC)
  • weak references
  • both compiler and virtual machine fit together in about 6k lines of C++ code.
  • optional 16bits characters strings

Squirrel is inspired by languages like Python, Javascript and especially Lua (the API is very similar and the table code is based on the Lua one).


Links