Nitra is a language workbench. You can use Nitra to create or extend a general-purpose programming language or a domain-specific language (DSL).
You create extended “grammar” of your language in textual form. Nitra compiles this “grammar” and produce:
Any Nitra based language can be extended with additional syntax rules even during parsing process.
Following screenshot shows Resharper plugin for C# language implemented in Nitra. This plugin (like any other Nitra plugin) supports: syntax highlighting, symbol highlighting (such as class and method names etc.), navigation (goto declaration, find usages, etc.), validation and real-time error reporting/highlighting. File extension ‘.ncs’ is used to avoid conflict with Visual Studio and ReSharper language service.
The plugin was generated from language specification DSLs.
Install – instructions to setup environment.
Using Nitra – instructions to use Nitra.
Build Nitra from sources
An Introduction to Nitra
Nitra goes Open Source!
Getting started with JetBrains Nitra
Develop – instructions to setup development environment.