Nemerle is a high-level statically-typed programming language for the .NET platform. It offers functional, object-oriented and imperative features. It has a simple C#-like syntax and a powerful meta-programming system.
Features that come from the functional land are variants, pattern matching, type inference and parameter polymorphism (aka generics). The meta-programming system allows great compiler extensibility, embedding domain specific languages, partial evaluation and aspect-oriented programming.
To find out more, please visit: http://nemerle.org/
Create hello.n:
using System.Console;
WriteLine("Hello world")
Compile and run
"C:\Program Files\Nemerle\ncc.exe" hello.n /out:hello.exe
hello.exe
Will output
Hello world
Install latest msi package from http://nemerle.org/
Download latest binary package from http://nemerle.org and export Nemerle=/path/to/binaries/extracted
Clone with all submodules: git clone --recursive git://github.com/rsdn/nemerle.git If you have a clone already: git pull --recurse-submodules
For Development:
For Installer:
Run BuildInstallerFull(fx-version).cmd depending on required .NET version. Installer will be placed in bin/Release/net-(fx-version)/Installer.
Note: You can also use BuildInstallerFast(fx-version).cmd to build installer without running tests.
Note: For building Visual Studio bindings you need VSSDK and administrative rights.
Nemerle can bootstrap itself on Mono.
Generic line:
xbuild NemerleAll-Mono.nproj /p:TargetFrameworkVersion=v(3.5 or 4.0 or 4.5 or 4.5.1) /p:Configuration=Release(or Debug) /t:Stage4(1 - 4) /tv:4.0(Needed for framework 4.0 and above)
Release 3.5:
xbuild NemerleAll-Mono.nproj /p:TargetFrameworkVersion=v3.5 /p:Configuration=Release /t:Stage4
Debug 4.0:
xbuild NemerleAll-Mono.nproj /p:TargetFrameworkVersion=v4.0 /p:Configuration=Debug /t:Stage4 /tv:4.0