Skip to content
A statically-typed, embeddable programming language
C NewLisp Vim script Yacc Lex CMake Other
Branch: master
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.
doc
etc/vim
grammar
tests
.gitignore
.gitmodules
CMakeLists.txt
README.md
analyze.c
ast.c
ast.h
debug.h
gen.c
generics.nl
graph.c
lexer.c
lexer.h
main.c
math.nl
nolli.c
nolli.h
notes.md
os.c
os.h
parser.c
sample.nl
scope.nl
simple.nl
spec.md
strtab.c
strtab.h
symtable.c
symtable.h
type.c
type.h

README.md

nolli

Nolli is:

- statically-typed
- lightweight
- embeddable
- JIT-compiled

and may soon be:

- garbage collected

Nolli's syntax is similar to that of Go, which happens to have an excellent language spec.

Nolli is a hobby language, meaning it has a minimal set of features. This is partly intentional and partly because the core language is under heavy development.

Build

You need cmake to generate the build system for your OS (Makefiles, VS Studio project, etc.) and llvm for JIT functionality.

Unix/MinGW build example:

mkdir build
cd build
cmake -D LLVM_DIR=<path to LLVMConfig.cmake> ..
make

This generates the library libnolli and a sample compiler binary nolli.

To generate the included source documentation, obtain doxygen 1.8.3, then run make doc.

You can’t perform that action at this time.