GNU ccScript offers a class extensible threaded embedded scripting engine for use with the Common C++ GNU package. This engine is also used in Bayonne (the GNU telephony server), and in TOSI (FreeBSD and GNU/Linux PBX integration servers). This engine differs from traditional scripting systems in that it is used to script near real-time state-event systems through deterministic callback step execution rather than the linear and non-deterministic fashion of embedded script libraries such as tcl, and libguile.
| Tags | Software Development Libraries Interpreters |
|---|---|
| Licenses | GPLv3 |
| Operating Systems | OS Independent |
| Implementation | C++ |
Recent releases


Changes: Direct indexing and mapping of arrays, tuples, and dictionaries using []'s and <> accessors rather than special operators is now possible. Numeric and string assignment expressions and symbol manipulations (such as pre-increment, push, pop, etc.) can now be directly used and have simplified operator syntaxes. Local method blocks have been added so that common code can be passed down from ccscript templates and overridden as needed in derived script sections. More math operators were added for numeric expressions.


Changes: Support was added for nested tuples, additional data transforms for case conversion, and expansion of tuples into separate symbols. Perl string comparison operators were also introduced for clarity between numeric and string operations.


Changes: New list processing support for easier list processing and database query processing, including some ideas borrowed from Python.


Changes: This release introduces support for conditional compiling of scripts based on bound keywords. It introduces the %index symbol to access indexing within for/foreach loops, and new loop index manipulation functions including "previous" to skip backward in a loop. foreach now supports an optional starting offset. Support has been added for numeric expressions and an explicit assignment operator.


Changes: Templating was introduced into the core ccscript language. This allows one to rapidly define and apply commands for common event handlers easily to multiple scripts.
A hierarchical, easy-to-use, powerful configuration module for Python.
A fully type-safe, extensible, extremely efficient C++ logging API library.