Algorithms on strings, trees, and sequences: computer science and computational biology
Algorithms on strings, trees, and sequences: computer science and computational biology
An Improved Context-Free Recognizer
ACM Transactions on Programming Languages and Systems (TOPLAS)
Efficient Parsing for Natural Language: A Fast Algorithm for Practical Systems
Efficient Parsing for Natural Language: A Fast Algorithm for Practical Systems
The theory of parsing, translation, and compiling
The theory of parsing, translation, and compiling
Code Selection Techniques: Pattern Matching, Tree Parsing, and Inversion of Derivors
ESOP '88 Proceedings of the 2nd European Symposium on Programming
AMAST '02 Proceedings of the 9th International Conference on Algebraic Methodology and Software Technology
Dynamic Programming
AMAST '02 Proceedings of the 9th International Conference on Algebraic Methodology and Software Technology
A discipline of dynamic programming over sequence data
Science of Computer Programming - Methods of software design: Techniques and applications
Yield grammar analysis in the Bellman's GAP compiler
Proceedings of the Eleventh Workshop on Language Descriptions, Tools and Applications
Hi-index | 0.00 |
Algebraic dynamic programming is a new method for developing and reasoning about dynamic programming algorithms. In this approach, so-called yield grammars and evaluation algebras constitute abstract specifications of dynamic programming algorithms. We describe howt his theory is put to practice by providing a specification language that can both be embedded in a lazy functional language, and translated into an imperative language. Parts of the analysis required for the latter translation also gives rise to source-to-source transformations that improve the asymptotic efficiency of the functional implementation. The multi-paradigm system resulting from this approach provides increased programming productivity and effective validation.