aboutsummaryrefslogtreecommitdiff
path: root/docs/cpp-coding/10-Enable_Scripting.md
blob: e22724b3ea909b8de5c51d0056f42a46b2c36bd1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
# Enable Scripting

The combination of scripting and compiled languages is very powerful. It gives us the things we've come to love about compiled languages: type safety, performance, thread safety options, consistent memory model while also giving us the flexibility to try something new quickly without a full rebuild.

The VM based compiled languages have learned this already: JRuby, Jython, IronRuby, IronPython

 * [ChaiScript](http://chaiscript.com/)
 * [AngelScript](http://www.angelcode.com/angelscript/)
 * [luabind](http://www.rasterbar.com/products/luabind.html)
 * [sol2](https://github.com/ThePhD/sol2) (bindings for Lua)
 * [SWIG](http://www.swig.org/) (simplified wrapper and interface generator)
 * [pybind11](https://pybind11.readthedocs.io/en/stable/) (Python and modern C++ interoperability)