# Release notes

This chapter contains the release notes for the different releases. Release notes are given in descending order for a particular version. The standard notation is major.minor.patch which represents respectively, the major, minor and patch number. A major version number changes indicates a substantial change in the distribution, including new tools, application interface and license. A minor version number change indicates noticeable change, with or without new tools but without application interface change nor license change. Finally, a patch number change indicates a simple change to fix problem. There is no additional features in a patch nor an application interface change.

## Release 3.8

This is a medium release in line with the previous release which integrates some funcdamental restructuring of the core interpreter in preparation for distributed execution. The module object has been refactored as well as the debugger. A new object called an hyper-threaded interpreter which operates with a grid provides a mechanism to executes module inside an executing interpreter. This is still an experimental technology. The csm service has been refactored as a transmutable content zone service.

## Release 3.7

This is a medium release in line with the previous release which integrates various extension and cleanup before major release 3.8 scheduled for the end of the year. Two new special forms, `break` and `continue`, have been added to control loops. The graph module has been revisted with numerous cleanup. A new state machine object called `Automaton` has been added. An absolute wait time call has been added to act as a timer. A new class called `Iso` has been added. In particular, support for ISO 3166 has been added.

## Release 3.6

This is a medium release which integrates a lot of cleanup as well as the beginning of the integration of the tls service. The unicode database has been updated to the latest 14.0.0 release. Some objects have been completely refactored, including base string vector. Algebra with complex number has been added including computation algorithm with Hilbert space. The json reader/writer has been enhanced to support plist. The pkcs signature algorithm has been added. It is designed for the support of ephemeral Diiffie-Hellman in the tls service. The tls service has been enhanced to support ephemeral Diiffie-Hellman. The integration of the tls inside applications will be able to start.

## Release 3.5

This is a important release which integrates numerous objects that were long overdue, including the support for complex numbers and numerous code cleanup. An undetected (until now) interlocking bug in the string split method has been discovered and fixed. Various encoding bug have also been fixed including one in the readline method. Prime number generation has been improved for speed, especially with safe prime. The quaternion object has been added. Form encoding and decoding has been enhanced. A json reader/writer has also been integrated. The dsa pki has been added with support for dsa parameters. The dh key support has been added. The concept of key configuration and renewal has been added. The module has been cleaned for simplex reader/writer design. The node formating generation has bee enhanced with indentation support. Pkcs8 support has been added with a better integration of key generation. Server name in extension is now supported. Datum and magma parts have been added along a general service cleanup. The concept of transmuter has been developped as a mixture interface. The blob view construction has been revisited.

## Release 3.4

This is a a minor release which integrates more support for the tls service. Safe prime number generation has been added. The assert special form has been enhanced to better support real testing. Real vector, point and matrix of size 1,2,2 and 4 has been added. The gcm mode has been added. The elliptic curve objects and its associated arithmetic has been integrated. Tests with the standard curves have been incorporated. The date and time object have been enhanced to support extended time with real precision below the second. A now constant is also available for setting the current date and time. The aes-gcm mode has been added as a cipher. Direct access to physical constants has been added. The unit string representation has been enhanced to support the scaling factor.

## Release 3.3

This is a major release with a complete re-factoring of the interpreter evaluation hierarchy. Internally, some objects are being rewritten with a c++/17 semantic. Many objects have also been optimized to support very long strings. The serialization coding has also been revisited. A serious bug with negative proleptic date has been fixed. Another bug with the object iterator has also been fixed. The Unicode standard, revision 13.0.0, has been incorporated in the core engine. The special form future creates a special object called a future which is used to evaluate an object asynchronously. The evaluation starts with the help of the force special form. The sync special form can be used to synchronize with the future. The numeral block has been enhanced to support row/column order and line/block padding and the interface has been considerably enhanced. The Unit object has been added to support the definition of physical unit. The physic constants and the periodic table has been re-factored. The geo service has been removed and the image objects have been moved to a new service called dip.

## Release 3.2

This is a minor release issued for synchronization with other projects. The numeral object has been completely re-factored including the api at the math module level. A generic json writer has been implemented and the corresponding json mime object has been updated.

## Release 3.1

This is a major release which new standard objects as well as the first distribution of the tls. Release 3.0 was an internal release which is will not be publicly distributed. The debian distribution has been fully integrated and the build system revisited to account for new platforms. The Unicode revision 11.2.0 has been incorporated in the core engine. The core engine has been enhanced to support the concept of task. A Task is similar to a thread object, but can be used directly at the api level. A new `Structure` object has been added to support object aggregation. engine. The buffer read and socket sapf (socket address protocol family) have been fixed. The `Autocom` object has bee added to support socket re-connection. The IPV6 address representation in uri has been fixed. The `Hyperlink` object has been added. The `Netpbm` object has been fixed for inconsistent block delete. The `Pixmap` stride has been fixed. The Sha-3 family of hashers has been added. The Kdf2 function has bee refactored to support the Pbkdf2 standard. Support for Galois field has been added. The `Gcm` cipher has been added. The csv split and validation process has been added. The `Transit` has been revisited. The integer vector object `Ivector` has been added. The float vector `Fvector` has been added. Random vector generation has been added. System wait on kill has been added. The csm objects have been considerably re-factored. Notably the `Part` and `Blob` objects. The standard documentation processor has been enhanced with more option for better distribution support.

## Release 2.9

Immediate release which fixes a potential deadlock in the output stream object. Small revision release with small allocator fixes, doc improvements and 32 bits inconsistencies removal. The support for 'clang' compiler has been updated as well. A patch with support for the RISCV processor has also been incorporated. Small revision release with minor improvements for IPV6 address support. The Uri object has been enhanced to support numerical ip address notation with brackets. The Address object has been enhanced to support numerical ip address detection. The Unicode revision 11.0.0 has been incorporated in the core engine. The core engine serialization has been revisited to account for a larger number of modules and services. The core engine hash function is now based on the Fowler-Noll-Vo algorithm. The core engine logger object has been completely redesigned with a simpler interface. The base 64/32/16 codec have been added as a single object Basexx. The security module has been enhanced with a new signature base class. The widget module has been added to the core distribution. At this time, the module contains expressable and conditional objects. The content session management service has been largely refactored. The geometry service has been enhanced to support image and pixmap. A netpbm reader/writer has been added as well.

## Release 2.8

Release with GCC 8 support. Intermediate release with GCC 8 support. Incorporated patches for GCC 7. The Unicode revision 9.0.0 has been incorporated in the core engine. The `Collectable` object is now being deployed inside the engine. A colletable object provides a `release` method which can be used to remove links between object. A full dupleix object has been added as a generic object. A full dupleix stream is provided for certain class of object like the network socket. The default mode of operations remains the half-dupleix stream since stream access are protected by mutexes. The math module incorporates an infix notation parser module. This is a preliminray work suppoosed to grow over the next releases. The mean, covariance and univariate regression has been added as objects. The bundle object literal index has been updated to follow the bundle length.

## Release 2.7

Minor platform updates. This is an internal release in preparation for the 2.8.0 release. Revisit socket options and parameters Minor fixes with the agent accessor.

## Release 2.6

Incorporated patches for GCC 6. Incorporated patches for Debian issued by maintainer. Fixed the FreBSD build. This is the relase 2.6.0. The code has been updated to better support c++/11 for both gcc and clang. The processing of character entity reference has been substantially changed to adhere fully with the xml specification. The spreadsheet importer has been updated and a csv reader has been added. The importation process has also been revisited. The security module has been updated to support the tls. This include moving to a 6 bits mersenne-twister and adding a certificate block. The normal deviate has been added. A new geometry service has been adedd to the distribution. This provides support for modeling various shapes and solids. The streamable objects has been added to the crowd data analytics service.

## Release 2.5

This is the relase 2.5.2. The release includes support for the GCC 5 / CLANG 5 compilers suite. Thank's to Martin Michlmayr for pointing this out. This is the relase 2.5.1. This is an emergency release that fixes a bug in the uri percent encoding which can be downloaded from here . It's amazing that it was not found before. The system infrastructure has been cleaned to support the clang compiler. The code has also been cleaned to support the C++11 standard which is now the compilation default. A `Style` object to support ina generic way the formating operation for the literal objects. Consequently, most of the literal objects have been cleaned and now support a `format` method that operates with a `Style` argument. The `PrintTable` object has been enhanced to support column extension and column style. The `ln` method is now the standard prefered name for the natural logarithm. Several bugs have been fixed in the real matrix implementation with respect to the openmp implementation. A new solver based on the Modified Gram-Schmidt algorithm. has been added. Note also that the direct solver interface has been updated. The `Uri` class has been enhanced to support partial uri path extraction. The spreadsheet module has been considerably overhauled. A new object `Lstack` has been added as a literal stack which can be bound to the cell as a literal array. The sheet formating has been also revisited to make profit of the new `Style` object has well as the printable transformation. The `Meter` object has been added as a mean to help for the performance measurements. The unicode conversion with reference has been updated to adapt itself to the stream or buffer encoding during a write process. A preliminary set of nuclear physics constants have been added. The `Workspace` object has been enhanced to support output stream. A `JsonMime` object has been added. It is designed to translate various object into a Javascript object notation format. At this time, only the real data samples `Rsamples` object is supported.

## Release 2.4

The Unicode 6.3.0 database is now supported in this release. The standard object incorporates an alias table which enables the mapping of property name in a plist. The `Trie` object has been enhanced to support a reference index. The trie name mapping is now obtained with the `to-names` method. This release incorporates an experimental support for OpenMP. The OpenMP threads are compatible with the afnix threads and support is initially available in the math module. This option must be enabled explicitelly in the build setup to be effective. The session user registration id has been enhanced. The concept of crowd service is available throuh the generic `Xaas` object, and more specifically with the `Saas` object. The `Workspace` object has been enhanced with a public zone. The `Intercom` object has been enhanced to support a buffered serialization which was somehow mandatory when operating in udp mode. Numerous deadlocks in the socket class have been fixed as well as udp inconsistencies. The `Qmr` Krylov solver has been added as part as the iterative solver family. The krylov convergence test has also been improved. The `Qr` solver has been added as part as the direct solver family. The sparse matrix has been enhanced to support a generic iterator. The whole solver architecture has been revisited and is now a class based architecture with a type driven factory. Numerous bugs have been fixed. Vector and matrix now support row permutations.

## Release 2.3

This is the relase 2.3.2. The release fixes the real samples array serialization. This is the release 2.3.1. Release 2.3.0 was an internal work which has not been distributed. The interpreter object can read a line or a passphrase from the attached terminal. The interpreter can be put in daemon mode. This mean that a new detached processed is spawned with the interpreter attached to it. The librarian has been simplified and the loader integrated inside the interpreter. The input steam nom implements a stream consumption method designed to accumulate a stream content into the stream buffer. Subsequently, the buffer can be converted into a string. The serialization of eos has been fixed. The resolver has been enhanced to map a file into a string. This methodology also applies to file present in a librarian. The `Plist` object has been enhanced to better support the merging operation. The Unicode 6.2.0 database is now supported in this release. The real matrix and vector implementation has been redesigned to support a unique sparse representation. The serialization has also been added to these objects. The crowd object set has enhanced with an intercom crowd object which simplify the transmission of registered crowd object. A cart and a cart set object have been added as a mean to store crowd object. The session object and sessions set objects have been added. The session object has been enhanced to produce the associated session cookie, with an augmented session closing mechanism. The `UriPath` object has been added as a uri path manipulator for http server. The silicon energy gap has been fixed to the standard value. The periodic table structure has been revisited. The xhtml form elements have been added to the service. A base element class has been also added to almost all elements. The base class provides support for setting the common element attributes.

## Release 2.2

The Hurd platform is now supported in this release. Thanks to our contributor for delivering this new platform. The Unicode 6.0.0 database is now supported in this release. The lexical analyzer is now an object in its own. It can be used to construct other object from a string description. An automatic linear system verification has been added to the linear solver. Jacobi preconditionner have been added to the Krylov solvers and Newton solvers have been improved. The periodic table of the elements is under construction and should be completed soon. The table will provides the information for each elements, including name, symbol and other physical constants. The suport for intrinsic carrier concentration is now available. This is a cryptic feature for people working on semiconductors.

## Release 2.1

The SuperH processor is now supported in this release. The SuperH is a 32 bits processor. The implementation now supports the concepts of Not a Number or NAN as a whole. A real object can set and tested for NAN. The resolver has been enhanced to support indirect librarian reference. The personnal information management module has been renamed into the crowd session management or `afnix-csm` module. The math module has been dramatically enhanced. The `Rsamples` object has been added for storing data samples. Function and polynomial objects have added to support generic function computation. The non-linear Newton system solver has been added as an object. The Scalable Vector Graphic service has been added. The service provides the support for the SVG 1.1 standard and allows the automatic generation of SVG compliant code. The Physics service has been added. The service provides the support for standard physics operations. In particular, the most common physical constants are defined in this service.

## Release 2.0

The `BlockBuffer` object has been added to the standard object library. Furthermore, the `Buffer` has been adapted to operate as a base class for the block buffer and the `shl` method has been added to the buffer object as a mean to shift the buffer. As consequence, the default operating mode for a buffer is the `BYTE` mode. When operating with strings, the `UTF8` mode might be more suitable. The `BitSet` object has been renamed to `Bitset` and the interface has been cleaned. The `Vector` has been cleaned. The `object-p` predicate has been fixed. The thread engine has been completly redesigned and extensivelly tested on 32 and 64 bits platforms. It is no longer a problem to operate with more than 32K threads simultanesouly. Furthermore, the concept of thread pool has been added to the engine. The `end-p` predicate has been added to the thread object to indicate a succesful thread completion. The `Reader` object has been added as a form reader. The reader parses an input stream and produces a form until the end-of-stream. The `Reader` provides the support for string based execution. The `Librarian` object has been enhanced to support the concept of default exeution module. When such module and when the interpreter is requested to do so, the module is automatically loaded during the execution. The `HttpProto` default version has been move to 1.1 for both the request and response objects. The `InputMapped` class has been enhanced to provide the facility for mapping buffer as well as acting as a null character generator. The `OuputBuffer` object has been added as a buffer output stream. With the addition of a form reader, the interpreter communication class `Intercom` has been added to the standard i/o module. The `XneCond` object has been enhanced to support various xml object. The `XmlPi` has been enhanced to support attributes derivation from the string value. The itu module is a new module. It has been added with a complete support for the ASN.1 standard. ASN.1 is essential for the support of certificates. The `axs` client has been removed from the core distribution. All of the client functionalities are now available in the spreadsheet module.

## Release 1.9

The long awaited `unref` reserved keyword has been added as a mechanism to unreference a symbol. The `object-p` predicate has been added as a standard predicate. The predicate is the negation of the `nil-p` standard predicate. The `method-p` predicate has also been added as a standard predicate. The file stream parsing has been enhanced with the help of the stop `◀` and resume `▶` characters. When the stop characters is found, all parsing operations are suspended until a resume character is found. The `about` symbol has been added to the exception object as extended exception reason. For a given reason, the file name and line number is added to the exception reason. The `Strvec` string vector class has been added to the core library. The class is similar to the `Vector` class except that it operates with strings and provides additional strings related methods. The `Counter` object has been added as a reserved object. The counter is designed to be used directly in loop. The core library has been extensively cleaned in preparation for the next major release. In particular, numerous memory leaks have been removed and some classes derivations have been fixed. A major bug in the closure argument counting has also been discovered and fixed during this process. The `Pathname` object has been enhanced to detect the type of path associated with the object. Additionally, a `normalize` method has been added. The `FileInfo` object has been added to the module. The class provides an immediate access to the principal file parameters such like it size or its modification time. The `NamedFifo` object has been added to the module. The class provides the support for a large string based fifo with file saving capabilities. Several predicates and functions related to media type conversion have been added to the module. In particular, a media type extension conversion has been implemented. The `HttpResponse` class has been enhanced with several methods for status code checking. Support for the Digital Standard Algorithm, (aka DSA) as specified by FIPS-PUB 186-3 has been added to the library. The implementation incorporates several new objects to manipulate signatures. The `RC2` block cipher algorithm has been added to the module. The documentation distribution rules have been rewritten and the "publish" rule has been added.

## Release 1.8

The `distclean` top level makefile rule has been renamed as `reset`. The stream engine has been cleaned with a new architecture. Two new objects `InputStream` and `OutputStream` acts as the foundation of this new design. The `HttpProto`, `HttpRequest` and `HttpResponse` objects have been completely rewritten. In the new model, both objects can operate on the server and client side. The `HttpReply` object has been removed. The `Sha224` hash function has been added. This class concludes the implementation of all SHA family hash functions. The `Des` class that supports the DES stream cipher has been added to the library. The `XmlRoot` class has been enhanced in order to ease the declaration node existence verification as well as the encoding mode extraction.

## Release 1.7

A new option controls the seeding of the random engine. By default, in debug mode, the random engine is not seeded unless requested by the user. In optimized mode, which is the normal mode, the random engine is seeded at initialization. The long awaited base number object has been added. The `Number` object serves the `Integer`, `Real`, and `Relatif` objects. The base number object is designed to ease the task of formatting numbers. The relatif number object has been enhanced to support extra methods that are used for large number computation. This include the power and gcd computation which are used by the cryptographic engine. In addition, the base arithmetic relatif methods have been optimized and certain corner bugs in the division fixed. The core engine has been updated with the new Unicode 5.1.0 database. A serious bug in the form synchronize engine that would cause an engine crash when a form is nil has been fixed. A new object called `Pathlist` has been added to support the manipulation of path list. The object is designed to ease the file name resolution in the presence of search path. The module has also been extensively cleaned. A new module called `afnix-mth` has been added to the standard distribution. The module is designed to integrate the base mathematical functions and objects available in the engine. With such introduction, the random number generation has been moved into this module. Additionally, the functions needed to generate prime numbers have been added to this module. A new module called `afnix-sec` has been added to the standard distribution. The module is designed to integrate the security functions and cryptographic objects.
Two new hasher objects have been added to the security module. The `Md2` object implements the MD2 message digest algorithm as described in RFC 1319. The `Md4` object implements the MD4 message digest algorithm as described in RFC 1320. The standard key derivation functions KDF1 and KDF2 have been added to the security module. The asymmetric cipher RSA has also been added to the security module and the `Key` object has been updated to reflect this.

## Release 1.6

The core engine has been seriously modified to accommodate for a new object collection system (aka garbage collection). The new system is more robust and provides new mechanism that will permit to reclaim cyclic structure as well as destroying global object on demand. The core engine has been adapted to support the new MACOS X Leopard operating system.

## Release 1.5

The core engine continues to be updated in order to better support the Unicode 5.0 standard. With this release, the string normalization scheme is now in place and used by default internally. This implies among other things, a better support for multiple diacritics as well as the beginning of the standard collation algorithm. The `Logger` base class has been enhanced to support the generation of a log file. An output stream can now be bound to the object. The concept of class defer object has been added to the `Class` object. The `defer` mode is the opposite of the `infer` mode and provides a mechanism for base class creation. The `PrintTable` object has been enhanced to support the concept of table header. The exception object `what` can be thrown with the reserved keyword `throw`. This provides a mechanism to re-throw an exception. A critical bug in the core engine affecting the behavior of the `return` reserved keyword in a `try` block has been fixed. A return form inside a try block was incorrectly generating an exception which was subsequently caught by the try block. The base network module has been enhanced to better operate with IPV6. In particular, when both IPV4 and IPV6 stacks are present and a host name (typically localhost) have an address entry, the socket constructor make sure it can build an object. The IPV6 address display has been rewritten. A new object called `Pathname` has been added to support the manipulation of system path. In addition, two new functions `mkdir` and `mhdir` have been also added to support the directory creation, both normally and hierarchically. The `Uri` has been dramatically enhanced to conform to the RFC 3986. In particular, the path representation for urn is now working properly. The cookie object has been massaged to support the cookie version 1, although it does not seem to be supported (yet!) by the browsers. The xml module has been enhanced with a new parsing system called the simple model. In the simple model, nodes are parsed in a linear fashion. The node content is available in the form of a string and its interpretation is at the user discretion. The `afnix-wam` service has been renamed as `afnix-wax`. The service has also been updated with two new objects, namely the `XmlMime` and `XhtmlMime` which permits to build a mime representation of an xml tree. Several xhtml objects have also been added to complete the collection. This include the `XhtmlScript` for example. The `afnix-xpe` service has been added as a new service. The xml processing environment (xpe) provides a xml processor that permits manipulate the whole xml tree with the help of various xml processor features. In particular, the service provides the support for the xml include extension. This release incorporates for the first time, the concept of core project, which represents a librarian or an application. The first project is the AFNIX protocol extension or apx which is a message based protocol designed to transport request/reply messages within a client/server environment. The message is built with the xml library and the librarian provides the encapsulation layer. The AFNIX media dumper or amd project is a complete application designed to illustrate the design of an application. The application permits to dump an uri content into a file.

## Release 1.4

The core engine has been substantially changed to support the new Unicode 5.0 standard. As of now, the engine is in place internally, but not fully activated. In particular, the string normalization is implemented but not activated. The next release should incorporate the full system with a change that should be transparent to the user. An instance inference mechanism -- which is equivalent to the concept of virtual constructor -- has been added to the core engine. Such system permits to derive top instance from a base instance construction. The `PrintTable` object has been enhanced with a `dump` method similar to the `format` method. The `Property` and the `Plist` objects have been added to the standard library. a property is name/value pair. The property list object is an iterable object that stores property objects. A new module called `afnix-xml` has been added. The module provides the foundation for a full xml 1.0/1.1 support. The module also includes a parser that permits to build xml tree. A xml tree writer is also part of the module functionality. A xml processor is not yet available and is expected in the next release. A new module called `afnix-nwg` has been added. The module provides the support for the network working group objects such like `Uri` object. The module also provides the foundation for the mime support. The `afnix-web` module has been removed and replaced by the `afnix-wam` service. The `afnix-wam` service has been added as the first service into the core distribution. A service differs from a module in the sense that it is a combination of different modules. The web application management service depends on the xml and nwg modules. The service provides all the functionality to support a http session, including xhtml page generation and cgi request reply.

## Release 1.3

The core engine has been modified to integrate a character transcoder that permits the support all ISO-8859 codesets which are mostly used for the encoding of european and arabic characters. Depending on the locale settings, the transcoder automatically remaps the 8 bits characters into their respective unicode character. All clients have been updated to detect their associated locale and to set automatically the appropriate transcoder. A new option `-e` has been added to force a particular encoding. A logging base class has been added. The logging facility provides the interface to store messages by time and level. This class is further extended in the modules. A heap class has been added. The heap can operate in ascending or descending mode. This class can be used to support priority queue. An option class has been added in order to ease the option capture when designing an application. The class permits to define the valid options and offer a powerful retrieval mechanism. The `Time` class has been completely changed and a new `Date` class has been added. The new mechanism provides a better separation between the time and the date, increase the date range and authorizes the support for multiple calendar. The `axs` client has been modified to support the `axs:insert-marker`, `axs:insert-header` and `insert-footer` control commands. The `Folio` and `Sheet` classes have been substantially updated to support additional information. The `Sheet` also supports the concept of markers that marks the sheet columns by literals. The concept of column tagging has been added with the associated search methods. All classes also contain an information field. The importation mechanism now supports a cons cell that defines both the cell name and the cell value. The `Table` class has been modified to support the concept of table data header. The associated methods have been added to the class and a new `HtmlTh` has been added. The concept of tag propagation has also been added. If a tag element already exists, this one is not added. This is particularly true for the `class` tag that is now part of the class constructor. The `HtmlPage` class has been put in strict conformance with xhtml 1.1 and the `XHtmlpage` class has been removed. A new module called the `afnix-pim` module has been added to the base distribution. The personal information management or pim module is designed to ease the management of personal information and agenda. A new module called the `afnix-gfx` module has been added to the base distribution. The module contains the base class that supports the graph data structure which was previously part of the standard library.

## Release 1.2

The core engine has been substantially modified to integrate the support for Unicode characters. Depending on the system settings the reader automatically adjust itself to operate in byte mode or in UTF-8 mode. The `String` and `Character` classes are now operating with a Unicode representation. The design of an Unicode based engine also impacts several classes like the `Regex`, `Buffer` and stream classes. A new class called `Byte` is also designed to handle byte character. A new stream model with a base `Stream` class has also been added. The full support with Unicode character is not yet completed. In particular, certain codesets are not supported at all. This is particularly true with case-conversion functions. The object model now supports the creation of orphan instance which is an instance without a class attached to it. The instance can be later bound to a class and such class can even be changed during the course of the program execution. The `Address` class has been updated to reflect the access to address aliases. The `Literate` class has been updated to reflect the support of Unicode characters. The class can operate both in byte mode or in Unicode character mode.

## Release 1.1

Support for the large file system has been added in the base distribution. All input/output operations as long as they are supported by the operating system are now done in 64 bits mode. The cryptographic library incorporates the support for the SHA-1, SHA-256, SHA-384 and SHA-512 hash algorithms. The cryptographic library incorporates the support for the Advanced Encryption Standard (AES) as a symmetric cipher. The ODC library has been renamed to SPS which stands for spreadsheet library. This new name is considered more appropriate for the function the library achieves. The XhtmlPara class is now configured to support XHTML 1.1 with utf-8 encoding. The documentation has been rewritten completely in XML. A DTD as well as the necessary XSLT style sheets have also been designed to produce a professional documentation which can be used for printing or for online browsing.

## Release 1.0

The 1.0 release is the initial release. This release replaces the old `ALEPH programming language` which has been discontinued.

This release incorporates the necessary files that support `GCC 4`. It also provides some minor fixes that were preventing the compilation on some 64 bits platforms. This release incorporates a minor fix that could cause the build process to fail. This release incorporates a minor fix that could cause the build process to fail. This is the primary release 1.0.0 which originated from the `ALEPH programming language` and which has been discontinued. A complete history of the language is provided in the description page.