This Article 
 Bibliographic References 
 Add to: 
Incremental Scanning and Parsing with Galaxy
July 1991 (vol. 17 no. 7)
pp. 641-651

The algorithms and techniques used in incremental scanning and parsing of the Galaxy language are presented. Incremental compilers, programming environments that feature instantaneous change processing as well as the execution time efficiency of compiled programs and code development using the Galaxy language are discussed. It is shown that the algorithms guarantee minimal rescanning and reparsing are space and time efficient and are easily adapted to any language of equivalent class, including such languages as C and Pascal.

[1] G. Grumant, "Software engineers face fundamental challenges,"IEEE Software, vol. 4, no. 6, p. 93, Nov. 1987.
[2] P. Henderson and D. Notkin, "Integrated design and programming environments,"Computer, vol. 20, no. 11, pp. 12-16, Nov. 1987.
[3] M. H. Penedo and W. E. Riddle, "Guest editor's introductions: Software engineering environment architectures,"IEEE Trans. Software Eng., vol. 14, pp. 689-696, June 1988.
[4] B. Boehm, "Improving software productivity,"Computer, vol. 20, no. 9, pp. 43-57, Sept. 1987.
[5] J. Walker and D. Moon, "The symbolics Genera programming environment,"IEEE Software, vol. 4, no. 6, pp. 36-45, Nov. 1987.
[6] S. Reiss, "Working in the Garden environment for conceptual programming,"IEEE Software, vol. 4, no. 6, pp. 16-27, Nov. 1987.
[7] G. Kaiser, S. Kaplan, and J. Micallef, "Multiuser, distributed language based environments,"IEEE Software, vol. 4, no. 6, pp. 58-69, Nov. 1987.
[8] M. Young, R. Taylor, and D. Troup, "Software environment architectures and user interface facilities,"IEEE Trans. Software Eng., vol. 14, pp. 697-708, 1988.
[9] A. Goldberg and D. Robson,Smalltalk80: The Language and Its Implementation. Reading, MA: Addison-Wesley, May 1983.
[10] E. Sandewall, "Programming in an interactive environment: The LISP experience," inInteractive Programming Environments, D. R. Barstow, H. E. Shrobe, and E. Sandewall, Eds. New York: McGraw-Hill, 1984, pp. 31-80.
[11] T. Reps and T. Teitelbaum, "The synthesizer generator," inProc. ACM SIGSOFT/SIGPLAN Software Eng. Symp., 1984, pp. 41-48.
[12] S. Reiss, "An approach to incremental compilation,"SIGPLAN Notices (Proc. ACM SIGPLAN'84 Symp. Compiler Construction), vol. 19, no. 6, pp. 144-156, June 1984.
[13] R. Medina-Mora and P. Feiler, "An incremental programming environment,"IEEE Trans. Software Eng., vol. SE-7, pp. 472-487, 1981.
[14] P. Fritzon, "Preliminary experience from the DICE system: A distributed incremental compiling environment," inProc. ACM SIGSOFT/SIGPLAN Software Eng. Symp. Practical Software Develop. Environments, 1984, pp. 113-123.
[15] C. Fischer, G. Johnson, J. Mauney, A. Pal, and D. Stock, "The POE language based editor project," inProc. ACM SIGSOFT/SIGPLAN Software Eng. Symp. Practical Software Develop. Environments, 1984, pp. 21-29.
[16] T. Reps,Generating Language-Based Environments. Cambridge, MA: MIT Press, 1984.
[17] C. Ghezzi, "Incremental parsing,"ACM Trans. Prog. Lang. Syst., vol. 1, pp. 58-70, 1979.
[18] T. Reps and T. Teitelbaum, "Language processing in program editors,"Computer, vol. 20, no. 11, pp. 29-40, Nov. 1987.
[19] A. Beetem and J. Beetem, "Introduction to the Galaxy language,"IEEE Software, vol. 6, no. 3, pp. 55-62, May 1989.
[20] T. Teitelbaum, T. Reps, and S. Horwitz, "The why and wherefore of the Cornell program synthesizer,"SIGPLAN Notices, vol. 16, no. 6, pp. 8-16, June 1981.
[21] M. Schwartz, N. Delisle, and V. Begwani, "Incremental compilation in Magpie,"SIGPLAN Notices (Proc. ACM SIGPLAN 1984 Symp. Compiler Construction), vol. 19, no. 6, pp. 49-56, June 1984.
[22] A. Aho and J. Ullman,Principles of Compiler Design. Reading, MA: Addison-Wesley, 1978.
[23] G. Wiederhold,Database Design. New York: McGraw-Hill, 1983.

Index Terms:
incremental scanning; parsing; Galaxy language; programming environments; instantaneous change processing; execution time efficiency; compiled programs; code development; algorithms; minimal rescanning; reparsing; time efficient; C; Pascal; high level languages; program compilers; programming environments
J.F. Beetem, A.F. Beetem, "Incremental Scanning and Parsing with Galaxy," IEEE Transactions on Software Engineering, vol. 17, no. 7, pp. 641-651, July 1991, doi:10.1109/32.83901
Usage of this product signifies your acceptance of the Terms of Use.