SaaSHub helps you find the best software and product alternatives Learn more →
Sol2 Alternatives
Similar projects and alternatives to sol2
-
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
-
-
-
-
-
extism
The framework for building with WebAssembly (wasm). Easily & securely load wasm modules, move data, call functions, and build extensible apps.
-
-
Spring RTS game engine
A powerful free cross-platform RTS game engine. - Report issues at https://springrts.com/mantis/ (by spring)
-
-
-
-
Luon
A compiler and IDE for the Luon programming language - a liaison beween Lua and Oberon+ - targeting LuaJIT
-
Lua
Discontinued Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description. (by LuaDist)
-
-
SWIG
SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages.
-
-
-
sol2 discussion
sol2 reviews and mentions
-
C++: The Documentary Released Today
Interesting, I don't find modern C++ verbose at all. 'auto', range-based for-loops and structured bindings did a great job at reducing the verbosity of C++98.
On top of that, C++ allows to design very concise APIs. (One of my favorite examples is sol2: https://github.com/ThePhd/sol2).
Library code involving templates, on the other hand, can be pretty complex and hard to read. Concepts and other C++20 features (like [[no_unique_address]]) are certainly an improvement, but only new projects with no backwards compatibility requirements can actually use them (unconditionally).
- Making Video Games in 2025 (without an engine)
-
Pluto is a unique dialect of Lua with a focus on general-purpose programming
Is it possible to use Pluto alongside with a binding library such as Sol2[0]? I don't mind not being able to set type hints in the bindings to use in some IDE, I can create stubs for it manually.
[0]: https://github.com/ThePhD/sol2
-
Lua Programming in Lua (first edition)
PSA: if you are using (modern) C++, https://github.com/ThePhD/sol2 makes embedding Lua incredibly easy and straightforward.
-
Lua Is So Underrated
The Lua C API is fantastic from a design perspective, but as you have discovered, it is rather error prone. Fortunately, there are many wrapper libraries that take care of all the stack manipulation. For example, I'm using https://github.com/ThePhD/sol2 to interface with C++ and the API is incredibly ergonomic.
-
Any tips for how to make moddable games?
As someone said, make the game data-driven is a good first step but I will say, also have some sort of way to add additional game logic. For C++ games, lua is really easy to embed the interpreter in your C++ binary, read in the files from a directory (like /mods) with the C++ filesystem api new in C++17, and it's very easy to use SoL to write an API for lua specific to your game. Many games use lua in this way and it's probably the most common mod path setup.
-
Script Interoperability
I've only ever done this from C++, but it's using the same lua C library, so should be durable from C as well. You can look up how sol2 or any other wrapper libraries do it.
-
Need help trying to embed lua in c++
Consider sol2
-
CBN Changelog: December 3, 2022. Improved LUA support in progress!
This version relies on a Lua C++ wrapper called sol2 to hide Lua stack management from the developer, so creating new bindings can be done by adding a few lines of human-readable C++. It still has to be done manually, but at least sol2 is able to automatically figure out types of objects being bound, so it's not much different from our de-/serialization code.
- RTS programming game where you write real C++ code to control your player.
-
A note from our sponsor - SaaSHub
www.saashub.com | 13 Jun 2026
Stats
ThePhD/sol2 is an open source project licensed under MIT License which is an OSI approved license.
The primary programming language of sol2 is C++.