Abstract
At some point in your career, you're going to implement a computer language. You probably won't be implementing Java or C++. You may not even recognize it as a language. Truth be told, there are an awful lot of domain-specific languages, or "little languages" [7] in common use:
configuration files,
HTML/XML documents,
shell scripts,
network protocols,
mail headers,
command-line arguments.
- Aho, A.V., Sethi, R., and Ullman, J.D. Compilers: Principles, Techniques, and Tools. Addison-Wesley, 1986. Google ScholarDigital Library
- Aho, A.V., and Ullman, J.D. The Theory of Parsing, Translation, and Compiling, Volume 1: Parsing. Prentice-Hall, 1972. Google ScholarDigital Library
- Aycock, J., and Horspool, N. Faster generalized LR parsing. In Proceedings of the 8th International Conference on Compiler Construction (LNCS #1575). Springer-Verlag, 1999, pp. 32-46. Google ScholarDigital Library
- Aycock, J., and Horspool, N. Directly-executable Earley parsing. In Proceedings of the 10th International Conference on Compiler Construction (LNCS #2027). Springer-Verlag, 2001, pp. 229-243.Google ScholarCross Ref
- Aycock, J., Horspool, N., Janousek, J., and Melichar, B. Even faster generalized LR parsing. To appear in Acta Informatica. Google ScholarDigital Library
- Beazley, D. Python Essential Reference. New Riders, 1999. Google ScholarDigital Library
- Bentley, J. Little languages. In More Programming Pearls. Addison-Wesley, 1988, pp. 83-100. Google Scholar
- Earley, J. An efficient context-free parsing algorithm. Communications of the ACM 13, 2 (Feb. 1970), 94-102. Google ScholarDigital Library
- Fischer, C.N., and LeBlanc Jr., R.J. Crafting a Compiler. Benjamin/Cummings, 1988. Google ScholarDigital Library
- Glanville, R.S., and Graham, S.L. A new method for compiler code generation. In 5th Annual ACM Symposium on Principles of Programming Languages. ACM/SIGPLAN, 1978, pp. 231-240. Google ScholarDigital Library
- Graham, S.L., Harrison, A.M., and Ruzzo, W.L. An improved context-free recognizer. ACM Transactions on Programming Languages and Systems 2, 3 (1980), 415-462. Google ScholarDigital Library
- Grune, D., and Jacobs, C.J.H. Parsing Techniques: A Practical Guide. Ellis Horwood, 1990. Google ScholarDigital Library
- Hopcroft, J.E., and Ullman, J.D. Introduction to Automata Theory, Languages, and Computation. Addison-Wesley, 1979. Google ScholarDigital Library
- Johnson, S.C. YACC -- yet another compiler compiler. UNIX Programmer's Manual, 7th Edition, 2B, 1978.Google Scholar
- Lang, B. Deterministic techniques for efficient non-deterministic parsers. In Automata, Languages, and Programming (LNCS #14). Springer-Verlag, 1974, pp. 255-269. Google ScholarDigital Library
- Levine, J.R., Mason, T., and Brown, D. Lex & Yacc, second edition. O'Reilly & Associates, 1992. Google ScholarDigital Library
- McLean, P., and Horspool, R.N. A faster Earley parser. In Proceedings of the International Conference on Compiler Construction (CC '96). Spring-Verlag, 1996, pp. 281-293. Google ScholarDigital Library
- Ousterhout, J.K. Tcl and the Tk Toolkit. Addison-Wesley, 1994. Google ScholarDigital Library
- Tomita, M. Efficient Parsing for Natural Languages. Kluwer Academic, 1986. Google ScholarDigital Library
- van den Brand, M., Sellink, A., and Verhoef, C. Current parsing technologies in software renovation considered harmful. In International Workshop on Program Comprehension, 1998, pp. 108-117. Google ScholarDigital Library
- Weingarten, F.W. Translation of Computer Languages. Holden-Day, 1973. Google ScholarDigital Library
Index Terms
- Why bison is becoming extinct
Recommendations
Are Testers eXtinct? How Can Testers Contribute to XP Teams?
Proceedings of the Second XP Universe and First Agile Universe Conference on Extreme Programming and Agile Methods - XP/Agile Universe 2002There are lots of success stories for XP teams where testers made a significant contribution. There are lots of success stories for XP teams that didn't have an official tester. There are some horror stories of so-called XP teams who didn't have testers ...
Layout-sensitive language extensibility with SugarHaskell
Haskell '12: Proceedings of the 2012 Haskell SymposiumProgrammers need convenient syntax to write elegant and concise programs. Consequently, the Haskell standard provides syntactic sugar for some scenarios (e.g., do notation for monadic code), authors of Haskell compilers provide syntactic sugar for more ...
Comments