# What is Nit?
Nit is an object-oriented programming language. The goal of Nit is to propose a robust statically typed programming language where structure is not a pain.
So, what does the famous hello world program look like, in Nit?
print "Hello, World!"
The Nit project is currently in alpha stage, at v0.7. It is in active development, moving fast and the APIs are still evolving.
You can follow the development on Github.
# Feature Highlights
Nit's goal is to be usable by real programmers for real projects
- KISS principle
- Script-like language without verbosity nor cryptic statements
- Painless static types: static typing should help programmers
- Efficient development, efficient execution, efficient evolution
- Easy bindings with C, C++, Java and Objective-C using the FFI
- Android support in the compiler
- Smart autodoc, nitdoc, used to document the standard lib
Nit's guideline is to follow the most powerful OO principles
Nit will help you write bug-free programs
- Strong static typing
- No more NullPointerException
# Published projects using Nit
- Opportunity, a free event planner
- Nitiwiki, the wiki engine used for the current website
- Nitrpg, the gamification of Nit development where contributors are rewarded by nitcoins
- Brewnit, a tool for home brewers
- A simple calculator using GTK for desktop and the native UI for Android while sharing the business logic
- Hunted Dino, a simple game for desktop and Android using class refinement to cleanly separate preoccupations in the code
- Chainz of Friendz, a puzzle game for desktop and Android
- Bindings for OpenGL ES 2.0, SDL 2.0, GTK 3 and sqlite3
# Getting Started
Get Nit from its Git repository:
$ git clone http://nitlanguage.org/nit.git
Ensure that dependencies (and recommendations) are installed:
# Eg. for Debian Jessie (8.0) $ sudo apt-get install build-essential ccache libgc-dev graphviz libunwind-dev pkg-config # Older versions of Debian or Ubuntu need `libunwind8-dev` or `libunwind7-dev`
Build the compiler (may be long):
$ cd nit $ make
Compile a program:
$ bin/nitc examples/hello_world.nit
Execute the program: