skip to main content
10.1145/1185642.1185644acmconferencesArticle/Chapter ViewAbstractPublication PagesadaConference Proceedingsconference-collections
Article

Automatic OO parser generation using visitors for Ada 2005

Published:12 November 2006Publication History

ABSTRACT

We describe AdaGOOP 2005 (the Ada Generator of Object-Oriented Parsers). AdaGOOP 2005 takes a specification of tokens and an LALR(1) grammar and creates a lexer, a parser that automatically creates a parse tree, and a traversal of the parse tree using the visitor pattern. AdaGOOP generates output that is similar to that of the Java tool SableCC. It takes advantage of the new interface feature available in Ada 2005 to create a visitor.

References

  1. Arcadia Project. "Aflex and Ayacc." http://www.ics.uci.edu/~arcadia/Aflex-Ayacc/aflex-ayacc.htmlGoogle ScholarGoogle Scholar
  2. Conn, Richard. 1997. "The Source Code Analysis Tool Construction Project." Proceedings of Tri-Ada'97, 141--148. See also http://unicoi.kennesaw.edu/ase/support/cardcatx/scatcdsk.htm Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Free Software Foundation. 1999. "Bison-GNU Project-Free Software Foundation." http://www.gnu.org/software/bison/bison.htmlGoogle ScholarGoogle Scholar
  4. Johnson, S.C. 1975. "Yacc---yet another compiler compiler." C.S. Technical Report #32. Murray Hill, NJ: Bell Telephone Laboratories.Google ScholarGoogle Scholar
  5. Lesk, M.E., and Schmidt, E. 1975. "Lex---a lexical analyzer generator." In Unix Programmer's Manual 2. Murray Hill, NJ: AT&T Bell Laboratories.Google ScholarGoogle Scholar
  6. Mauney, Jon, and Fischer, Charles N. 1981. "An improvement to immediate error detection in Strong LL(1) parsers." Information Processing Letters 12(5):211--12.Google ScholarGoogle ScholarCross RefCross Ref
  7. Paxson, Vern. 1990. "Flex users manual." Ithaca, NY: Cornell University.Google ScholarGoogle Scholar
  8. SableCC Home Page. http://www.sablecc.orgGoogle ScholarGoogle Scholar
  9. Martin, Robert C. 2002. "The Visitor Family of Design Patterns." In The Principles, Patterns and Practices of Agile Software Development. Prentice Hall. ISBN: 0135974445. http://objectmentor.com/resources/articles/visitorGoogle ScholarGoogle Scholar
  10. Fagin, B. 2000. "Using Ada-based robotics to teach computer science." In Proceedings of the 5th Annual SIGCSE/SIGCUE Conference on Innovation and Technology in Computer Science Education (Helsinki, Finland, July 11-13, 2000), 148--151. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. NQC Home Page. http://bricxcc.sourceforge.net/nqc.Google ScholarGoogle Scholar
  12. Pedersen, K. H. and Constantinides, C. 2005. "AspectAda: aspect oriented programming for Ada 95." Proceedings of SIGAda 2005 (Atlanta, GA, USA, November 13-17, 2005), 79--92. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Automatic OO parser generation using visitors for Ada 2005

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        SIGAda '06: Proceedings of the 2006 annual ACM SIGAda international conference on Ada
        November 2006
        92 pages
        ISBN:1595935630
        DOI:10.1145/1185642

        Copyright © 2006 ACM

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 12 November 2006

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article
      • Article Metrics

        • Downloads (Last 12 months)4
        • Downloads (Last 6 weeks)1

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!