Elm  2
ELM is a library providing generic data structures, OS-independent interface, plugins and XML.
Immutable Data Structure

ELM provides a set of immutable data structure like lists and tree. The goal of this module is to allow functional programming style while supporting limited but effective garbage collection. Basically, the immutable nature of the data structure allows (a) to handle more easily the memory management and (b) providing an efficient and compact way of memory use while avoiding a lot of time-costly memory operations. More...

Classes

class  list< T >
 

Detailed Description

ELM provides a set of immutable data structure like lists and tree. The goal of this module is to allow functional programming style while supporting limited but effective garbage collection. Basically, the immutable nature of the data structure allows (a) to handle more easily the memory management and (b) providing an efficient and compact way of memory use while avoiding a lot of time-costly memory operations.

Coming with this immutable nature, an efficient garbage collector is provided. It is quite limited because it has no way to collect the living instances of the data structures items. Therefore, it requires the user to specialize it and to provided a collect() function responsible to supply the list of living data structure items.