C++Now 2018: JeanHeyd M. “Compile Fast, Run Faster, Scale Forever: A Look into the sol2 Lua Library”
Channel: CppNow
Date: 03/06/2018

http://cppnow.org
—
Presentation Slides, PDFs, Source Code and other presenter materials are available at: http://cppnow.org/history/2018/talks/
—
Using another language inside your C++ program never comes easily, even if its a scripting language. Specifically, the Lua language's C API is very explicit and fast but stack management and API quirks often make scaling up a problem without significant man-hours, and often result in suboptimal wrappers written to serve the current needs and deadlines without thought to clean interface or later optimization. 

sol2 is a new approach to wrapping the Lua C API. We consider first how to create a pleasant experience similar to the Lua language itself, creating airtight abstractions around core concepts to maximize initial intuitive understanding of our wrapper. We then introduce library-specific concepts with tutorials and documentation to allow the user to make progress quickly. Finally, we provide several facilities for overriding the default wrapper behavior to allow for custom handling, letting the user scale the wrapper alongside their needs. 

In this session, we will discuss API extension points, C API wrapping techniques, Lua C API (ab)use, runtime performance characteristics, and compile-time reduction strategies. Friendly discussion throughout the demo and presentation is encouraged!
— 
JeanHeyd
Columbia University
Student

JeanHeyd "ThePhD" is a student at Columbia University in New York. Most of his programming is for fun and as a hobby, even if his largest open-source contribution -- sol2 -- is used across many industries. He is currently working towards earning his own nickname, climbing the academic ladder while spending as much time as possible contributing to C++ standardization and development. 

He very much loves dogs and hopes to have his own in a year or so. He also likes Vulf's "Tee Time" from the album Mr. Finish Line. 
—
Videos Filmed & Edited by Bash Films: http://www.BashFilms.com
---

*--*

---