English

Fat API bindings of C++ objects into scripting languages

Programming Languages 2024-03-25 v1

Abstract

A fat API exposes nearly all of a C++ object's public attributes and methods to a consuming environment, such as a scripting language, or web client. This can be contrasted with a conventional, or thin API, where the API is defined up front, and the C++ object provides the implementation, most of which is private to the C++ layer. Obviously, reflection is required to expose C++ objects to a consuming layer like this -- this paper explores using the Classdesc system to implement reflection of C++ objects into a JavaScript/TypeScript environment via a RESTservice, and also via a Node.js API module.

Cite

@article{arxiv.2403.14940,
  title  = {Fat API bindings of C++ objects into scripting languages},
  author = {Russell K. Standish},
  journal= {arXiv preprint arXiv:2403.14940},
  year   = {2024}
}
R2 v1 2026-06-28T15:29:28.249Z