|
Nemerle Homepage |
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 and type inference and parameter polymorphism (aka generics). Meta-system allows great compiler extensibility, embedding domain specific languages, partial evaluation and aspect-oriented programming.
Beginning with the 0.2.0 release, language is a full CLS consumer and producer.
Nemerle is not a dynamically typed language in the spirit of Python or Perl. One does not write the types only when the compiler knows them anyway (which is most of the time).
Nemerle meta-programming system (macros) have nothing in common with macros in C. They are more akin to the Lisp macros.
Nemerle is not far away from C#.
Semantically Nemerle is mostly a C# superset.
Syntactically they are very close, the differences here are well thought out and necessary to make the language consistent. All the people who consider Nemerle syntax odd, compared to the C# one, are referred to the Haskell and/or Lisp manuals.
More news can be found in our code blog (or its RSS feed).
For older news see there.
The language implementation and this documentation is licensed under free-for-any-use BSD-like license. You can find copy of the license here.