CompLang.org

Homepages

Projects

  • Colm - COmputer Language Manipulation. A programming language for the analysis and transformation of computer languages. This is the language I designed for my PhD Thesis.
  • Ragel - Ragel is a development tool that compiles regular language grammars into executable code. Ragel targets C, C++, Objective-C, D, Java and Ruby. It is unique in that it allows you to embed actions and control non-determinism in regular languages. Use it to build very fast parsers.
  • Kelbt - Kelbt generates backtracking LALR(1) parsers. Semantic undo actions given by the user are executed during backtracking. The strategy for parsing ambiguous constructs is user-controlled by way of ordering productions. Kelbt can be used to produce grammar-based parsers for languages that are both context-dependent and ambiguous (for example C++).
  • DSNP - Distributed Social Networking Protocol. Proof that we can abandon the silos and get back in control of our digital identities.

Inactive Projects

  • ETXL - ETXL is the prototype implementation of the ideas expressed in my Master's Thesis. The prototype is itself a TXL program that transforms ETXL to pure TXL then runs the TXL engine on the result.
  • Aapl - Aapl is a C++ template library. It provides implementations of AVL Tree, Linked List, Vector, Binary Search Table and Sort. Aapl supports different generic programming paradigms by providing several variations of the standard data structures. Aapl data structures do not depend on heap memory allocation nor do they have data members that are hidden behind a strict abstraction layer. Data structure elements may be user-defined and instances of them can even exist in more than one data structure.