Kit is a, hot off the press, new language from Ben Moris, who created the language with the purpose of game development.

“At a glance:

Kit has a strong, static type system to catch errors at compile-time.

type system to catch errors at compile-time. Kit is a procedural language , not object-oriented or functional; however, traits, boxes and abstracts can simulate object-oriented interfaces and polymorphism.

, not object-oriented or functional; however, traits, boxes and abstracts can simulate object-oriented interfaces and polymorphism. Kit compiles to C , which then compiles to native libraries or executable.

, which then compiles to native libraries or executable. Memory management in Kit is manual (no automatic garbage collection), with some convenience features to make this easier.” — kitlang.org

Convinced that Kit is a magical language? Good let’s get our hands dirty.

To get started you’ll need to download and install stack on your system. Kit is written in Haskell, so stack is required to build the kit compiler.

Once that is done, head over to the kit github, and clone the repository. Open a command line or terminal and navigate to the newly created folder for the repo.

stack build

stack install

This will create the kit compiler, kitc, and copy it into a directory installed by stack, for use. Next we need to copy over the kit standard library into a location where it can be accessed by the compiler. This can be done in multiple ways, but let’s refer to the directions given on github.

You’ll need to point Kit to its standard library; you have a few options:

1. Set an environment variable, KIT_STD_PATH

2. Put the kitc binary next to it's standard library

3. Put the standard library in an OS-specific default location:

-Linux: "/usr/lib/kit"

-Max: "/usr/local/lib/kit"

What’s important here is dependent on your OS. On my linux machine, I copied over the library to /usr/lib/kit using the command from the kit directory:

sudo cp std/. ~/usr/lib/kit -r