|Version 19 (modified by 11 years ago) ( diff ),|
Welcome to Matreshka project
Matreshka is a set of Ada libraries to develop information systems. Now it includes two libraries - first provides support for localization, internationalization and globalization; and second includes XML processor. They includes:
- support for unbounded form of string of full range of Unicode characters including Unicode algorithms such as normalization, case conversion and case folding, collation. Elements of Universal_String can be accessed directly by index or using cursors. Two forms of cursors are available now: characters cursor - iterate string character by character, and grapheme clusters cursor - iterate string as sequences of characters forms visible character. Several techniques used to speedup performance and minimize memory footprint, see League/Performance for more information.
- regular expression engine. It uses Perl-style syntax with Unicode extensions. Non-backtracking virtual machine guarantee that regular expression searches run in time linear in the size of the input.
- text decoder. It can decode text from large number of character sets into Unicode.
- message translation system. It helps to translate application's messages into any natural human language.
- XML document parser with SAX-style API. Both XML 1.0 and XML 1.1 and corresponding Namespaces in XML specifications are supported. SAX XML Writer coming soon.
League --- universal string, examples
League/Regexp --- regular expression engine, examples and syntax reference
League/Translator --- localization: message translation service
XML/SAX --- Simple API for XML.
Source code can be downloaded from Downloader section of this site or from Subversion repository