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.
SQBind is a pretty simple, yet powerful binding library for the Squirrel language. It includes support for binding classes, methods, static methods, member variables, functions, enums, and C types. It can either manage pointers or leave them unmanaged. It also recognizes functions that receive pointers or references and passes values accordingly. It also easily lets you use your own types for taking care of native Squirrel types, such as your own (or std::) string class, table class, array class, etc.