Note: If you plan to use LTemplate, please send me an email and let me know about your use case. If I know how people use it, I can be more careful with breaking changes.
LTemplate is a package that simplifies extending Mathematica through its LibraryLink C/C++ API. It automates the generation of boilerplate code, the loading of library functions, and using managed library expressions. LTemplate is designed to be embeddable into a larger Mathematica application that relies on LibraryLink, but it can also be used standalone in an interactive session.
Drop the LTemplate
directory in the directory opened by SystemOpen@FileNameJoin[{$UserBaseDirectory, "Applications"}]
.
See Documentation/LTemplateTutorial.nb
for a short introduction, and Documentation/Examples
for many additional examples.
The skeleton-project
directory contains a sample project that embeds LTemplate. Use this as a starting point for your own LTemplate-based package.
For an example of a mature application that uses and embeds LTemplate, see IGraph/M.
See CHANGELOG.md for a list of changes between versions.