About the X-SAIGA Project
To achieve modularity, we have chosen to base our algorithms on top-down parsing. To accommodate ambiguity, we implement inclusive choice through backtracking search. To achieve polynomial complexity, we use memoization. We have developed an algorithm which accommodates direct left-recursion using curtailment of search. Indirect left recursion is also accommodated using curtailment together with a test to determine whether previously computed and memoized results may be reused depending on the context in which they were created and the context in which they are being considered for reuse.
We have implemented our algorithms, at various stages of their development, in Miranda (up to 2006) (more info. here) and in Haskell (from 2006 onwards) (more info. here ).
Project Members
- Dr. Richard Frost, University of Windsor
- Dr. Paul Callaghan, University of Durham
- Rahmatullah Hafiz, University of Windsor
Acknowledgements
About the name X-SAIGA