About ChaiScript

ChaiScript is the first and only scripting language designed from the ground up with C++ compatibility and modern design in mind. It is an ECMAScript-inspired, embedded functional-like language.

ChaiScript is licensed under the BSD license.

Download

Due to an increased release schedule, and the nature of ChaiScript being a header-only library, binary releases will be made less often. Previous releases can be found on github.

Version: 4.2.0 Released: 12/1/2012
(Requires Boost)
Source (tar.bz2)
Source (zip)

Version: 5.2.0 Released: 12/1/2012
(Requires C++11 Compiler)
Source (tar.bz2)
Source (zip)

news

ChaiScript 5.0.0 Released

Changes since 4.0.0:

  • ChaiScript no longer users Boost. 5.0.0 Requires a C++11 compliant compiler. This means either g++ >= 4.5 or clang >= 3.1
  • Much better performance but less portability. Due to its use of variadic templates, it will not be supported for some time by MSVC.

ChaiScript 4.0.0 Released

Changes since 3.1.0

  • svenstaro: Unused variables and CMake consistency fixes
  • Added support for returning pointers from functions (#13)
  • Compile with -pedantic (#9)
  • Fix issues with multiple ChaiScript object types having the same attribute name (#15)
  • Prevent variable redeclaration in same scope (#22)
  • mgee: Boxed_Number improvements (#27)
  • Support switch statements (#34)
  • Fix uint16 comparions (#26)
  • Add ability to add const_var globals in Module objects (#14)
  • Add support for ternary operators ?:
  • Add headers to CMakeLists so they show up in IDEs
  • Add ability to get vector of defined objects and vector of defined functions
  • Fix memory leak in cyclical references
  • Clean up static analysis issues discovered
  • Fix vector construction to be consistent with map construction
  • Increased unit tests to 161
  • Performance enhancements

ChaiScript 3.1.0 Released

Changes since 3.0.0

  • Numeric operations performance increased approximately 10x
  • Looping operations performance increased up to 2x
  • Engine start up time decreased
  • Several parsing bugs related to index operators fixed
  • Added full support for all C algebraic types: double, long double, float, int, long, char, uint8_t, uint16_t, uint32_t, uint64_t, int8_t, int16_t, int32_t, int64_t
  • Enhanced support for capturing of exceptions thrown from ChaiScript in C++

Download it from github.

Development Officially Moved to Git and Other News

The development for ChaiScript has officially moved to github.

It's important to share something about the development process we have at ChaiScript.

  • We never make a commit unless the commit passes all unit tests.
  • We never commit a new feature without an accompanying unit test.

What does this mean to you, the user? Mainly it means that even though we have not pushed out an official release in nearly a year, git master branch always represents a stable release.

Syndicate content
Support ChaiScript by sharing it with your friends: