JWPL is a language independent, database-driven, high performance Wikipedia API that provides structured access to information nuggets like redirects, categories, articles, and link structure. It contains a Mediawiki Markup parser that can be used to further analyze the contents of a Wikipedia page or standalone with other text, TimeMachine, which reconstructs a snapshot of Wikipedia from a specific date, or multiple snapshots from a time span, and RevisionMachine, which offers efficient access to the history of articles using a dedicated storage format which decreases storage space by 98%. This enables random access to the whole revision history without requiring several terabytes of storage for a single Wikipedia dump.
LEPL is a recursive descent parser library written in Python. It is based on parser combinator libraries popular in functional programming, but also exploits Python language features. Operators provide a friendly syntax, and the consistent use of generators supports full backtracking and resource management. Backtracking implies that a wide variety of grammars are supported; appropriate memoisation ensures that even left-recursive grammars terminate.
The Link Grammar Parser (link-grammar) is a syntactic parser of English, Russian, Arabic, and Persian (and other languages as well), based on link grammar, an original theory of English syntax. Given a sentence, the system assigns to it a syntactic structure, which consists of a set of labelled links connecting pairs of words. The parser also produces a "constituent" (Penn tree-bank style phrase tree) representation of a sentence (showing noun phrases, verb phrases, etc.). The RelEx extension provides dependency-parse output.
Metrix++ is a platform to collect and analyze code metrics. It has a plugin-based architecture, so it is easy to add support for new languages, define new metrics, and/or create new pre- and post-processing tools. Every metric has 'turn-on' and other configuration options. There are no predefined thresholds for metrics or rules; you can choose and configure any limit you want. It scales well to large codebases. For example, initial parsing of about 10000 files takes 2-3 minutes on an average PC, and only 10-20 seconds for iterative re-run. Reporting summary results and exceeded limits takes less than 1 - 10 seconds. It can compare results for 2 code snapshots (collections) and differentiate added regions (classes, functions, etc.), modified regions, and unchanged regions. As a result, easy deployment is guaranteed into legacy software, helping you to deal with legacy code efficiently, and either enforce the 'leave it not worse than it was before' rule or motivate re-factoring.
MightyString adds array functionality and other tools for Ruby strings, including matching, indexing, substitution, and deletion. MightyString::HTML.strip_html provides more ideal HTML-to-ASCII formatting output. This is an advanced block "filtering" module. It works very well, with extremely rare cases which fall through its fingers.
The Parsing Expression Grammar Template Library (PEGTL) is a C++0x library for creating parsers according to a Parsing Expression Grammar (PEG). Grammars are embedded as regular C++ code, created with template programming (not template meta programming). These hierarchies naturally correspond to the inductive definition of PEGs. The library extends on the subject of PEGs with new expression types, actions that can be attached to grammar rules, and mechanisms to ensure helpful diagnostics in case of parsing errors. PEGs are superficially similar to Context-Free Grammars (CFGs).
PHP Emoticon Parser can replace emoticon text with HTML image tags. It can search for emoticon text characters in a given text string and replace them with equivalent emoticon images. The emoticon text and image mappings are defined in a separate script that maps emoticon names to the different equivalent representations for emoticon text symbols.