[pure-lang-users] Pure 0.6 round out
Status: Beta
Brought to you by:
agraef
|
From: Albert G. <Dr....@t-...> - 2008-09-07 12:03:39
|
Hi everybody, this is *not* a release announcement (Pure 0.6 isn't out yet, I hope to get to that in the next few days). But as I've fallen a bit silent lately, here is a quick summary of the new stuff in the forthcoming 0.6 release, as it's taken shape in svn during the past two weeks. If you still have some bug reports, now is the time! (Eddie, I haven't forgotten about the matrix/vector stuff, but with all the important new features already in 0.6, I just think it's better to do a release now and then start working on the GSL support immediately.) - Macros: These are implemented as rewriting rules which are applied at compile time, and can be used for all usual preprocessing purposes, including the optimization and inlining of function calls at the source level, and the programming of user-defined special forms. And of course they're "hygienic". - Thunks a.k.a. "futures": These are realized as anonymous parameterless closures (a la Alice ML) which are "called by need" (including memoization), and are used to implement lazy data structures. As a showcase, the prelude now implements lazy lists a.k.a. "streams". - Private namespaces. You can now declare symbols as private in a module, to hide away internal helper functions and constructor symbols, and to keep the global public namespace clean. - Sentries (object finalizers) and references (mutable expression pointers). File objects in the system module now employ sentries in order to close themselves when they're garbage-collected. - New interactive startup files (.purerc). These are just normal Pure scripts with additional definitions for interactive usage. - The 'list' command was renamed to 'show' (to avoid a clash with the prelude function 'list'), and a new 'dump' command was added. The latter is similar to 'show', but saves a snapshot of your current interactive environment in a file. - User-defined hook for the expression printer (__show__). This allows you to define your own custom print representations for expressions at runtime. - Syntax highlighting for gedit (contributed by Eddie Rucker, thanks!). The manual has been updated, too, so you can find further details there. Cheers, Albert -- Dr. Albert Gr"af Dept. of Music-Informatics, University of Mainz, Germany Email: Dr....@t-..., ag...@mu... WWW: http://www.musikinformatik.uni-mainz.de/ag |