Baike.dev
All toolsOnline toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
P

ponder

> 编程语言
Open source

C++ reflection library with Lua binding, and JSON and XML serialisation.

661 stars0 likes0 views
WebsiteGitHub

About

C++ reflection library with Lua binding, and JSON and XML serialisation.

Ponder

Linux & OSX: - Windows:

Currents status: 3.2-alpha. API is unstable as features added/changed.

New: Version 3

V1 replaced Boost with C++11. V2 added Lua bindings. V3 refactored to remove some warts, ease future development, and re-add serialisation. API is evolving.

About

Ponder is a C++ multi-purpose reflection library. It provides an abstraction for most of the high-level concepts of C++: classes, enumerations, functions, properties.

C++1x supplies better support for compile-time reflection. Runtime reflection involves baking compile-time reflection into the executable so this can be used at runtime. Ponder presents a simple API for baking your objects so that they can be used at runtime. The baking can also, optionally, userdata and support for Lua scripting.

Features:

  • API to expose C++ objects.
  • Runtime API to create objects, call functions, and read and modify properties.
  • Automatic Lua binding generation.

Links

  • Homepage & documentation.
  • GitHub project.
  • Release notes.
  • Maintainer blog

Build

Compilers supported. Requires C++17.

  • MSVC 2017+
  • Xcode 8+
  • GCC 7+
  • Clang 3.9+

Ponder uses CMake to generate project files which are then used to build the project (Build docs). E.g. Use make to build Ponder (but you can use any build system CMake supports):

bash
git clone https://github.com/billyquith/ponder.git
cd ponder
mkdir build && cd build
cmake -G "Unix Makefiles" ..
make

Package Managers

Windows vcpkg:

vcpkg install ponder

History

Ponder is a fork of CAMP, which has been retired by the original authors. CAMP relies on Boost, and is pre-C++11. In Ponder, the Boost dependency has been removed, and instead, C++11 features are used. CAMP was developed by Technogerma Systems France and then by Tegesoft.

See CHANGELOG.md and release notes for more details on Ponder changes.

Issues· 0 open

View all issuesOpen on GitHub

No open issues yet, or sync has not completed.

> Tags

C++c-plus-pluscampcppcpp-library

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category编程语言
PricingOpen source

> Related tools

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言