[Mono-list] Nemerle 0.1.4 released
Michal Moskal
malekith@pld-linux.org
Wed, 30 Jun 2004 18:02:57 +0200
The 0.1.4 source tarball of Nemerle compiler has hit our server.
Nemerle is a new hybrid (functional, object-oriented and imperative)
programming language for the .NET platform.
Key features of the language include:
* simplicity
* C#-like syntax
* easy to use object system (derived directly from the .NET)
* easy access to both functional and imperative features
* powerful code-generating macros
* variants
* pattern matching
* static and on-demand dynamic typing
* type inference.
The source tarball can be downloaded from:
http://nemerle.org/download/nemerle-0.1.4.tar.gz
and:
http://nemerle.org/download/nemerle-0.1.4.tar.bz2
MSI, DEB and RPM packages (as well as the source tarball of course)
as usual from:
http://nemerle.org/download.html
New features in this release include (from the NEWS file):
#v+
0.1.4, Jun 29 2004
This is yet another incremental release before 0.2.0.
The language:
* The assignment operator <- has been changed to =. This was a long
discussed issue. <- is still available, it will be deprecated in
0.2.0, and removed later. Please convert your sources, under Unix:
perl -p -i -e 's/<-/=/g' *.n
should do the trick.
* The `;' is now optional after `}' in expressions. That is both:
while (cond) { ... };
foo ()
and
while (cond) { ... }
foo ()
are correct.
* Expressions starting with keywords have now much lower priority.
In particular:
foo += fun (_) {...};
needs to be now written like this:
foo += (fun (_) {...});
Sorry. This is however to be reconsidered.
* 1_000_000 is now proper literal (like in Ada or Perl).
* ref and out parameters are supported now.
* try {...} catch {...} finally {...} is now proper code,
try { f () } catch {...} is too, but try f () catch {...} is not.
The library:
* Tuple and list types now provide proper ToString(), Equals() and
GetHashCode() methods.
* List.Sort() was sorting in the opposite direction, we fixed that. Please
update your sources.
The compiler:
* Some fixes to attribute support, in particular attribute classes
can be defined and used in the same compilation.
* Several new checks (like requiring implemented interface methods
to be public etc).
* Several bugfixes.
Other stuff:
* Added examples written by students during Nemerle course. Some new
OpenGL/SDL examples by Kamil.
#v-
Have fun testing it :-)
--
: Michal Moskal :: http://www.kernel.pl/~malekith :: GCS !tv h e>+++ b++
: ::: Logic is a nice contrast to the Real World. :: UL++++$ C++ E--- a?