Welcome to kahina.org
For imperative programming languages like C or Java there exist powerful debuggers that visualize the execution of programs in much detail and dramatically ease searching for bugs. For logic programming languages like Prolog, such graphical tools are hardly available. The aim of our project is to develop a framework for graphical debugging that not only visualizes the complex processes in executing logic programs, but also provides facilities for post-mortem analysis.
Our primary use case is the development of unification-based grammars, mathematically precise models of natural language that assign syntactic structure and meaning representations to words and sentences. Using software like TRALE and QType, they can be implemented as logic programs. Since the analysis (parsing) of even short sentences can easily comprise several thousand computation steps, there is an urgent need for a graphical debugger that makes parsing processes more easily traceable.
Four debuggers based on the Kahina framework are currently being developed:
Kahina for SWI-Prolog
Kahina for SICStus Prolog
Kahina for TRALE
- Download? (coming soon)
- User's Manual
- Our poster presented at HPSG 2010 and a 5-page extended abstract describing the system
- Our paper presented at HMGE 2013
Kahina for QType
The Framework (Kahina Core)
- The only documentation available for now is our Javadoc, updated automatically from the source code repository.
- A hackers' manual is planned for the future. If you want to explore on your own how an application in the Kahina framework works, org.kahina.tralesld.TraleSLDInstance is a good starting point. Please note that the API is still subject to, possibly radical, change.