[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?