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