Nemerle is a programming language created in 2003 by Krzysztof Czarnecki.
| #363on PLDB | 23Years Old | 177Repos |
Nemerle is a general-purpose high-level statically typed programming language designed for platforms using the Common Language Infrastructure (.NET/Mono). It offers functional, object-oriented (OO) and imperative features. It has a simple C#-like syntax and a powerful metaprogramming system. Read more on Wikipedia...
class Hello
{
static Main () : void
{
System.Console.WriteLine ("Hello World");
}
}// Hello World in Nemerle (a functional programming language for .NET)
System.Console.WriteLine("Hello World");
using System.Console;
module Program
{
Main() : void
{
WriteLine("Hello world");
}
}using System;
using System.Runtime.InteropServices;
class PlatformInvokeTest
{
[DllImport("msvcrt.dll")]
public extern static puts(c : string) : int;
[DllImport("msvcrt.dll")]
internal extern static _flushall() : int;
public static Main() : void
{
_ = puts("Test");
_ = _flushall();
}
}| Feature | Supported | Example | Token |
|---|---|---|---|
| Strings | ✓ | "Hello world" | " |
| Print() Debugging | ✓ | System.Console.WriteLine | |
| Line Comments | ✓ | // A comment | // |
| Units of Measure | ✓ | def m3 = 1 g; def m4 = Si.Mass(m1); WriteLine($"Mass in SI: $m4, in CGS: $m3"); def x1 = Si.Area(1 cm * 10 m); WriteLine($"Area of 1 cm * 10 m = $x1 m"); | |
| Type Inference | ✓ | ||
| Macros | ✓ |
// http://nemerle.org/About
def title = "Programming language authors";
def authors = ["Anders Hejlsberg", "Simon Peyton-Jones"];
// 'xml' - macro from Nemerle.Xml.Macro library which alows to inline XML literals into the nemerle-code
def html = xml <#
|
|
| Semantic Indentation | ✓ | ||
| Comments | ✓ |