Doxygen-like source browsing for arbitrary languages

doxygen, among other things, creates an on-line documentation browser in HTML for source code. It supports C++, C, Java, IDL and to some extent Objective-C, PHP, C# and D, but this is largely due to the similarity of these languages' syntax. haddock provides most of the functionality of doxygen for the Haskell language, however it does not generate hyper-linked source code listings. A tool that subsumes the functionality of both and allows generation of documents for arbitrary languages would therefore be of great utility to the wider programming community.

This would require the creation of a meta-language for describing the manner in which declarations (be they functions, types, classes etc) are linked to their uses. A typical invocation of the tool would take as inputs a specification written in the aforementioned meta-language and the source code and generate documents accordingly.

Naturally, the tool will need to understand the meta-language. Traditionally, one would implement a lexer, parser and various analysis phases in order to glean meaning from specifications written in the meta-language. However, we suggest embedding the language in Haskell and loading the specifications using Donald Stewart's hsplugin tool.

Expectations References Last modified : Mon Feb 16 2004

Valid HTML 4.01!