Lisp Flavoured C++
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
includes Update list_utils.hpp Jun 4, 2018
.gitignore Initial commit Feb 26, 2018
LICENSE Update LICENSE Jun 4, 2018
README.md Update README.md Jun 4, 2018
SYMBOLS.md update symbols and core.hpp Mar 13, 2018
tests.cpp update tests.cpp Mar 19, 2018

README.md

C++! THIS IS THE LAST OF MY PARENTHESES! TAKE IT FROM MEEEEEEE!

LICPP

AGPLv3 license Open Source Love svg2

Made with Secret Alien Technology

Knights of the Lambda Calculus

A Lisp Flavoured C++

An Visual Studio specified version is in the branch ms, licensed under MIT.

About

A tiny library that implements some basic Lisp (mainly Common Lisp) utilities as a DSL, currently just a toy, beware of dirty hacks and low performance.

This has been tested with Clang 9.0, GCC 7.1, and Visual Studio Community 2017.

Usage

At least C++ 14 is required.

You may expect everything to work similarly to what you know in Common Lisp (although there will be limitation because of the differences between C++ and Lisp).

For the details of symbols defined in LICPP, check out SYMBOLS.md.

If you want some extra features, please use the latest version of GCC with the flags mentioned below:

  • Type Constraints, enable with flag -fconcepts (GCC only)

Note

tlist stands for the type List<T> which does not have an equivalance in Common Lisp, you may think this is (type t) => [t] in Haskell.

Contributing

All functions should be (preferably) implemented in the same way as its corresponding definition in CLHS.

License

AGPLv3+