The TXL source transformation language

Science of Computer Programming - Tập 61 - Trang 190-210 - 2006
James R. Cordy1
1School of Computing, Queen's University, Kingston, Canada

Tài liệu tham khảo

Adelson-Velskii, 1962, An algorithm for the organization of the information, Soviet Mathematics Dokay, 3, 1259 Auguston, 1991, RIGAL—A programming language for compiler writing, Lecture Notes in Computer Science, 502, 529, 10.1007/BFb0019367 Barnard, 1982, Hierarchic syntax error repair for LR grammars, International Journal of Computing and Information Sciences, 11, 231, 10.1007/BF00999442 D.T. Barnard, Automatic generation of syntax-repairing and paragraphing parsers, Technical Report CSRG-52, Computer Systems Research Group, University of Toronto, 1975, 132 pp I.D. Baxter, Parallel support for source code analysis and modification, in: Proc. IEEE 2nd International Workshop on Source Code Analysis and Manipulation, 2002, pp. 3–15 Bergstra, 1989 Biggerstaff, 1989, Design recovery for maintenance and reuse, IEEE Computer, 22, 36, 10.1109/2.30731 D. Blostein, J.R. Cordy, R. Zanibbi, Applying compiler techniques to diagram recognition, in: Proc. 16th IAPR International Conference on Pattern Recognition, 3, 2002, pp. 127–130 P. Borovansky, C. Kirchner, H. Kirchner, P.E. Moreau, C. Ringeissen, An overview of ELAN, in: Proc. 2nd International Workshop on Rewriting Logic and its Applications, WRLA’98, Electronic Notes in Theoretical Computer Science 15 (1998) 55–70 Bravenboer, 2005, Program transformation with dynamically scoped rewrite rules, Fundamenta Informaticae, 69, 1 van den Brand, 2002, Compiling language definitions: The ASF+SDF compiler, ACM Transactions on Programming Languages and Systems, 24, 334, 10.1145/567097.567099 van den Brand, 2003, Term rewriting with traversal functions, ACM Transactions on Software Engineering and Methodology, 12, 152, 10.1145/941566.941568 M. van den Brand, J. Scheerder, J.J. Vinju, E. Visser, Disambiguation filters for scannerless generalized LR parsers, in: Proc. 11th International Conference on Compiler Construction, 2002, pp. 143–158 T. Bray, A. Paoli, C.M. Sperberg-McQueen (Eds.), Extensible Markup Language (XML) 1.0, http://www.w3.org/TR/1998/REC-xml-19980210.pdf, 1998 Cai, 1993, Towards increased productivity of algorithm implementation, ACM Software Engineering Notes, 18, 71, 10.1145/167049.167067 I. Carmichael, TXL: Experiments with pattern-directed tree transformation as a programming paradigm, M.Sc. Thesis, Department of Computing and Information Science, Qujeen’s University, Kingston, 1990 J. Clark (Ed.), XSL Transformations (XSLT) Version 1.0’, W3C Recommendation http://www.w3.org/TR/1999/REC-xslt-19991116, 1999 Cordy, 1988 J.R. Cordy, E.M. Promislow, Specification and automatic prototype implementation of polymorphic objects in Turing using the TXL dialect processor, in: Proc. 1990 IEEE International Conference on Computer Languages, 1990, pp. 145–154 Cordy, 1991, TXL: A rapid prototyping system for programming language dialects, Computer Languages, 16, 97, 10.1016/0096-0551(91)90019-6 Cordy, 2002, source transformation in software engineering using the TXL transformation system, Journal of Information and Software Technology, 44, 827, 10.1016/S0950-5849(02)00104-0 J.R. Cordy, K.A. Schneider, Architectural design recovery using source transformation, in: Proc. CASE’95 Workshop on Software Architecture, 1995 J.R. Cordy, Generalized selective XML markup of source code using agile parsing, in: Proc. IEEE 11th International Workshop on Program Comprehension, 2003, pp. 144–153 T.R. Dean, J.R. Cordy, K.A. Schneider, A.J. Malton, Experience using design recovery techniques to transform legacy systems, in: Proc. 2001 IEEE International Conference on Software Maintenance, 2001, pp. 622–631 Dean, 2003, Agile parsing in TXL, Journal of Automated Software Engineering, 10, 311, 10.1023/A:1025801405075 A. van Deursen, T. Kuipers, Building documentation generators, in: Proc. 1999 International Conference on Software Maintenance, 1999, pp. 40–49 Gelernter, 1985, Generative communication in Linda, ACM Transactions on Programming Languages and Systems, 7, 80, 10.1145/2363.2433 C. Halpern, TXL: A rapid prototyping tool for programming language design, M.Sc. Thesis, Department of Computer Science, University of Toronto, 1986 Holt, 1988, The Turing programming language, Communications of the ACM, 31, 1410, 10.1145/53580.53581 Holt, 1987 Jenkins, 1989, Q’Nial: A portable interpreter for the nested interactive array language, Nial, Software—Practice and Experience, 19, 111, 10.1002/spe.4380190203 E. Kohlbecker, Using MkMac, Computer Science Technical Report 157, Indiana University, 1984 J. Kort, R. Laemmel, Parse-tree annotations meet re-engineering concerns, in: Proc. IEEE 3rd International Workshop on Source Code Analysis and Manipulation, 2003, pp. 161–171 Laemmel, 2001, Grammar adaptation, Lecture Notes in Computer Science, 2021, 550, 10.1007/3-540-45251-6_32 Malton, 1993, The denotational semantics of a functional tree manipulation language, Computer Languages, 19, 157, 10.1016/0096-0551(93)90031-U A.J. Malton, K.A. Schneider, J.R. Cordy, T.R. Dean, D. Cousineau, J. Reynolds, Processing software source text in automated design recovery and transformation, in: Proc. IEEE 9th International Workshop on Program Comprehension, 2001, pp. 127–134 McCarthy, 1962 L. Moonen, Generating robust parsers using island grammars, in: Proc. IEEE 8th Working Conference on Reverse Engineering, 2001, pp. 13–22 Parr, 1995, ANTLR: A predicated LL(k) parser generator, Software, Practice and Experience, 25, 789, 10.1002/spe.4380250705 Paige, 1991, Viewing a program transformation system at work, Lecture Notes in Computer Science, 844, 5, 10.1007/3-540-58402-1_3 R. Paige, APTS External Specification Manual, Unpublished manuscript, available at, http://www.cs.nyu.edu/~jessie, 1993 T.J. Parr, An Overview of SORCERER: A Simple Tree-parser Generator, Technical Report, http://www.antlr.org/papers/sorcerer.ps, 1994 Pereira, 1980, Definite clause grammars for language analysis—A survey of the formalism and a comparison with augmented transition networks, Artificial Intelligence, 13, 231, 10.1016/0004-3702(80)90003-X E. Promislow, A run-time model for generating semantic transformations from syntactic specifications, M.Sc. Thesis, Department of Computing and Information Science, Qujeen’s University, Kingston, 1990 Purtilo, 1989, Parse-tree annotations, Communications of the ACM, 32, 1467, 10.1145/76380.76387 Ramesh, 1992, Nonlinear pattern matching in trees, Journal of the ACM, 39, 295, 10.1145/128749.128752 Sarbo, 1994, Grammar transformations for optimizing backtrack parsers, Computer Languages, 20, 89, 10.1016/0096-0551(94)90016-7 F. Schroer, The GENTLE Compiler Construction System, Oldenbourg, 1997 M.P.A. Selink, C. Verhoef, Native patterns, in: Proc. IEEE 5th Working Conference on Reverse Engineering, 1998, pp. 89–103 A. Thurston, Evolving TXL, M.Sc. Thesis, School of Computing, Queen’s University, Kingston, 2005 Tomita, 1987, An efficient augmented context-free parsing algorithm, Computational Linguistics, 13, 31 K. Vijay-Shanker, D. Weir, Polynomial time parsing of combinatory categorical grammars, in: Proc. 28th International Meeting of the Association for Computational Linguistics, 1990, pp. 1–8 Visser, 2001, Stratego: A language for program transformation based on rewriting strategies, Lecture Notes in Computer Science, 2051, 357, 10.1007/3-540-45127-7_27 Visser, 2004, Program transformation in Stratego/XT: Rules, strategies, tools and systems in stratego XT/0.9, Lecture Notes in Computer Science, 3016, 216, 10.1007/978-3-540-25935-0_13 E. Visser, Z. Benaissa, A. Tolmach, Building program optimzers with rewriting strategies, in: Proc. ACM 3rd SIGPLAN International Conference on Functional Programming, ICFP’98, 1998 pp. 13–26 E. Visser, Scannerless generalized-LR parsing, Technical Report P9707, in: Programming Research Group, University of Amsterdam, 1997 Weinberg, 1971 Zanibbi, 2002, Recognizing mathematical expressions using tree transformation, IEEE Transactions on Pattern Analysis and Machine Intelligence, 24, 1455, 10.1109/TPAMI.2002.1046157