|
Libraries, APIs and Frameworks
Graphical Interface (GUI)
-
wcWidgets
Cross-platform library. wxWidgets is a free C++ framework that
facilitates cross platform software development, including GUIs,
threads, sockets, database, file system access and more.
Open source, cross-platform, with 11 years of evolution behind it.
Native UI platforms available:
Windows, Unix/Linux GTK+/Motif/X11, MacOS, OS/2, MGL.
SourceForge project: wxWidgets.
Anteriormente wxWindows.
- GTK+ - The GIMP Toolkit
GTK+ is a multi-platform toolkit for creating graphical user interfaces.
Offering a complete set of widgets, GTK+ is suitable for projects
ranging from small one-off projects to complete application suites.
GTK+ is free software and part of the GNU Project. However, the
licensing terms for GTK+, the GNU LGPL, allow it to be used by all
developers, including those developing proprietary software, without any
license fees or royalties.
- Qt
Qt is a complete C++ application development framework. It includes a
class library and tools for cross-platform development and
internationalization. Available under Open Source and Commercial
licenses, for Windows, X11 (Unix/Linux), Mac OS X. By Trolltech.
Compression
- zlib -
"A Massively Spiffy Yet Delicately Unobtrusive Compression Library"
zlib foi projetada para ser um biblioteca de compressão de dados
sem perda, gratuita, de uso-geral, legalmente livre — isto é,
não coberta por nenhuma patente — para uso em virtualmente qualquer
hardware de computador e sistema operacional. O próprio formato de
dados zlib é portável entre plataformas. Diferente do
método de compressão LZW usado no compress do Unix e no formato
de imagem GIF, o método de compressão usado na zlib nunca
expande os dados (ou seja, não há situação em que
o dado compactado fique maior que o original). zlib foi escrita por Jean-loup
Gailly (compactação) e Mark Adler (descompactação),
que também participam da autoria dos utilitários gzip, UnZip e Zip.
Não é surpresa portanto que o algoritmo de compressão
usado na zlib é essencialmente o mesmo de gzip and Zip, nominalmente,
o método 'deflate' originado no PKZIP 2.x da PKWARE.
ZLib DLL & cmp-z-it OCX for Windows.
ZlibTool OCX (leia também o
FAQ - zlib OCX).
Regular Expressions
-
PCRE - Perl Compatible Regular Expressions
The PCRE library is a set of functions that implement regular expression pattern
matching using the same syntax and semantics as Perl 5. PCRE has its own native
API, as well as a set of wrapper functions that correspond to the POSIX regular
expression API. The PCRE library is free, even for building commercial software.
PCRE was originally written for the Exim MTA, but is now used by many projects,
including Python, Apache, Postfix, KDE, Analog, PHP, and Ferite.
PCRE SourceForge Project.
-
UTS #18: Unicode Regular Expressions
Unicode Technical Standard #18, 05/01/2005.
Scanners, Parsers, Syntatical and Lexical Analyzers
Information
Generators
-
Category: Parser generators
From Wikipedia, the free encyclopedia.
-
ANTLR Parser Generator and Translator Generator
ANTLR, ANother Tool for Language Recognition, (formerly PCCTS) is a
language tool that provides a framework for constructing recognizers,
compilers, and translators from grammatical descriptions containing
Java, C#, or C++ actions. ANTLR provides excellent support for tree
construction, tree walking, and translation.
Terence Parr has been working on ANTLR since 1989.
-
The LEX & YACC Page
LEX - Lexical Analyser Generator
YACC - Yet Another Compiler-Compiler.
-
GNU Flex - The GNU version of LEX
-
GNU Bison - The GNU version of YACC
-
Lex/YACC (actually FLEX and BISON)
Straight port and compilation of FLEX and BISON to the WIN32 platform.
- SableCC parser generator
SableCC is an object-oriented framework that generates compilers (and
interpreters) in the Java programming language.
-
LALR Parser Generator
The LALR parser generator (LPG) is a tool for developing scanners and parsers
written in Java, C++ or C. Input is specified by BNF rules.
LPG supports backtracking (to resolve ambiguity), automatic AST generation
and grammar inheritance.
- re2c
re2c is a tool for writing very fast and very flexible scanners.
Unlike any other such tool, re2c focuses on generating high efficient code
for regular expression matching. As a result this allows a much broader range
of use than any traditional lexer offers.
By Marcus Börger.
- Quex
Quex - A Mode Oriented Directly Coded Lexical Analyser Generator.
-
lolo -- language-oriented lexer objects
lolo extracts symbols from a sequence of input characters belonging to the
ASCII or Unicode sets. lolo scanners can be extended without access to the
source code: symbol recognizers can be derived by inheritance and an
executing scanner can be reconfigured for different contexts.
Recognizer actions are represented by objects which may be replaced at any time.
Recognizers need not be based on finite state automata; therefore, lolo can
recognize symbols that systems like lex cannot recognize directly.
lolo was developed in 2001 as successor to
oolex -- object-oriented lexer. Both tools are part of
Bernd K�hl's PhD thesis about
object-orientation in compiler construction.
- See also:
Java: APIs: Scanners, Parsers, Syntatical and Lexical Analyzers
Bar Codes
Reduced Space Symbology (RSS)
Internationalization
-
ICU - International Components for Unicode
ICU is a mature, widely used set of C/C++ and Java libraries for Unicode support,
software internationalization and globalization (i18n/g11n).
ICU is widely portable and gives applications the same results on all platforms
and between C/C++ and Java software.
ICU4J API,
ICU4J Technical FAQ.
ICU at IBM - Globalize your On Demand Business.
-
ISO 639
ISO 639 - Codes for the representation of names of languages.
From Wikipedia, the free encyclopedia.
-
ISO 639: Codes for the representation of names of languages
Codes for the Representation of Names of Languages:
ISO 639-2 is the alpha-3 code, ISO 639-1 is the alpha-2 code (available
for 22 languages). By Library of Congress (LoC), USA.
-
Language Codes: ISO 639, Microsoft and Macintosh
This is a draft list of language code correspondences between ISO codes,
Microsoft codes, and Macintosh codes.
-
ISO 3166
ISO 3166 - Codes for the representation of names of countries. It's a
three-part geographic coding standard for coding the names of countries
and dependent areas:
ISO 3166-1,
ISO 3166-2,
ISO 3166-3.
From Wikipedia, the free encyclopedia.
-
ISO 3166-1: alpha-2 country code elements
This list states the country names (official short names in English), as
given in ISO 3166-1 and the corresponding ISO 3166-1-alpha-2 code elements.
- See also:
Java: APIs: Internationalization
|