Abstract
Language-based editing systems have the potential to become a practical, central, and powerful part of every software engineer's toolkit, but progress has been limited by inattention to user-centered design issues. Major usability requirements for such systems include familiar, unrestricted text editing; coherent user interaction with software; rich, dynamic information display; multiple alternative views; uninterrupted service in the presence of ill-formedness, incompleteness, and inconsistency; description-driven support for multiple languages; and extensibility and customizability. Solutions require better understanding of software engineers and their tasks, appropriate design metaphors, new architectural organizations, and design for adaptation and extension.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
Ronald M. Baecker and Aaron Marcus, Human Factors and Typography for More Readable Programs, Addison-Wesley Publishing Co. (ACM Press), Reading, MA, 1990.
Rolf Bahlke and Gregor Snelting, The PSG System: From Formal Language Definitions to Interactive Programming Environments, ACM Transactions on Programming Languages and Systems 8,4 (October 1986), 547–576.
Rolf Bahlke and Gregor Snelting, Design and Structure of a Semantics-Based Programming Environment, International Journal of Man-Machine Studies 37,4 (October 1992), 467–479.
Robert A. Ballance, J. Butcher and Susan L. Graham, Grammatical Abstraction and Incremental Syntax Analysis in a Language-Based Editor, Proceedings of the ACM-SIGPLAN 1988 Conference on Programming Language Design and Implementation 23,7 (June 22–24, 1988), 185–198.
Robert A. Ballance, “Syntactic and Semantic Checking in Language-Based Editing Systems”, UCB/CSD-89-548, Ph.D. Dissertation, Computer Science Division, EECS, University of California, Berkeley, December 1989.
Robert A. Ballance, Susan L. Graham and Michael L. Van De Vanter, The Pan Language-Based Editing System, ACM Transactions on Software Engineering and Methodology 1,1(January 1992), 95–127.
Jon Bentley, Little Languages, Communications of the ACM 29,8 (August 1986), 711–721.
P. Borras, D. Clemént, Th. Despeyroux, J. Incerpi, G. Kahn, B. Lang and V. Pascual, “CENTAUR: the system”, Proceedings ACM SIGSOFT '88: Third Symposium on Software Development Environments, November 1988, 14–24.
John Boyland, Charles Farnum and Susan L. Graham, “Attributed Transformational Code Generation for Dynamic Compilers”, in Code Generation — Concepts, Tools, Techniques, Robert Giegerich and Susan L. Graham (editors), Springer Verlag, Berlin, 1992
Gary Brooks, Gilbert J. Hansen and Steve Simmons, A New Approach to Debugging Optimized Code, Proceedings of the ACM-SIGPLAN 1992 Conference on Programming Language Design and Implementation 27,7 (June 17–19, 1992), 1–21
Jacob Butcher, “Ladle”, UCB-CSD-89-519, Computer Science Division, EECS, University of California, Berkeley, November 1989. Master's Thesis.
Ravinder Chandhok, Phillip Miller, John Pane and Glenn Meter, “Structure Editing: Evolution Towards Appropriate Use”, Presented at the CHI '90 Workshop on Structure Editors, Seattle, Washington, April 1990.
D. D. Cowan, E. W. Mackie and G. M. Pianosi, Rita-an editor and user interface for manipulating structured documents, Electronic Publishing 4,3 (September 1991), 125–150
Laura M. Downs and Michael L. Van De Vanter, “Pan I Version 4.0: An Introduction for Users”, 91/659, Computer Science Division, EECS, University of California, Berkeley, August 1991.
Véronique Donzeau-Gouge, Gérard Huet, Giles Kahn and Bernard Lang, “Programming Environments Based on Structured Editors: The MENTOR Experience”, in Interactive Programming Environments, David R. Barstow, Howard E. Shrobe and Erik Sandewall (editors), McGraw-Hill, New York, NY, 1984, 128–140.
Adele Goldberg, Programmer as Reader, IEEE Software 4,5 (September 1987), 62–70.
Dennis R. Goldenson and Marjorie B. Lewis, Fine Tuning Selection Semantics in a Structure Editor Based Programming Environment: Some Experimental Results, ACM SIGCHI Bulletin 20 (October 1988).
Susan L. Graham, Michael A. Harrison and Ethan V. Munson, “The Proteus Presentation System”, Proceedings ACM SIGSOFT '92: Fifth Symposium on Software Development Environments, December 1992, 130–138.
Dan Heller, XView Programming Manual: An OPEN LOOK Toolkit for X11, O'Reilly & Associates, Inc., Sebastopol, California, 1990.
Robert W. Holt, Deborah A. Boehm-Davis and Alan C. Schultz, “Mental Representations of Programs for Student and Professional Programmers”, in Empirical Studies of Programmers: Second Workshop, Gary M. Olson, Sylvia Sheppard and Elliot Soloway (editors), Ablex Publishing, Norwood, New Jersey, 1987, 33–46.
Vera John-Steiner, Notebooks of the Mind: Explorations of Thinking, Harper & Row, 1985.
Jurgen Koenemann and Scott P. Robertson, “Expert Problem Solving Strategies for Program Comprehension”, Proceedings SIGCHI Conference on Human Factors in Computing Systems, New Orleans, Louisiana, 1991, 125–130.
Bernard Lang, “On the Usefulness of Syntax Directed Editors”, in Advanced Programming Environments, Lecture Notes in Computer Science vol. 244, Reidar Conradi, Tor M. Didriksen and Dag H. Wanvik (editors), Springer Verlag, Berlin, 1986, 47–51
Barbara Staudt Lerner, Automated Customization of Structure Editors, International Journal of Man-Machine Studies 37,4 (October 1992), 529–563
Stanley Letovsky, “Cognitive Processes in Program Comprehension”, in Empirical Studies of Programmers, Elliot Soloway and Sitharama Iyengar (editors), Ablex Publishing, Norwood, New Jersey, 1986, 58–79.
Stanley Letovsky and Elliot Soloway, Delocalized Plans and Program Comprehension, IEEE Software 3,3 (May 1986), 41–49.
Clayton Lewis and Donald A. Norman, “Designing for Error”, in User Centered System Design: New Perspectives on Human-Computer Interaction, D. A. Norman and S. W. Draper (editors), Lawrence Erlbaum Associates, Hillsdale, New Jersey, 1986, 411–432.
Sten Minör, On Structure-Oriented Editing, PhD Dissertation, Department of Computer Science, Lund University, Sweden, January 1990.
Lisa Rubin Neal, “Cognition-Sensitive Design and User Modeling for Syntax-Directed Editors”, Proceedings SIGCHI Conference on Human Factors in Computing Systems, Toronto, Canada, April 1987, 99–102.
Donald A. Norman and Stephen W. Draper (editors), User Centered System Design: New Perspectives on Human-Computer Interaction, Lawrence Erlbaum Associates, Hillsdale, New Jersey, 1986.
David Notkin, The GANDALF Project, Journal of Systems and Software 5,2 (May 1985), 91–105.
Paul Oman and Curtis R. Cook, Typographic Style is More than Cosmetic, Communications of the ACM 33,5 (May 1990), 506–520.
G. R. Perkins, R. W. Norman and S. Danicic, Coping with Deeply Nested Control Structures, SIGPLAN Notices 22,2 (February 1987), 68–77.
Thomas Reps and Tim Teitelbaum, The Synthesizer Generator, Proceedings of the ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments 19,5 (May 1984), 42–48.
Thomas Reps and Tim Teitelbaum, The Synthesizer Generator Reference Manual, Department of Computer Science, Cornell University, 1987. Second edition.
Charles Rich and Richard C. Waters, The Programmer's Apprentice: A Research Overview, Computer 21,11 (November 1988), 11–25.
Donald A. Schoen, The reflective practitioner: how professionals think in action, Basic Books, New York, 1983
M. E. Sime, T. R. G. Green and D. J. Guest, Scope Marking in Computer Conditionals — A Psychological Evaluation, International Journal of Man-Machine Studies 9 (1977), 107–118.
Elliot Soloway and Kate Ehrlich, Empirical Studies of Programming Knowledge, IEEE Transactions on Software Engineering SE-10,5 (September 1984), 595–609.
Richard M. Stallman, EMACS: The Extensible, Customizable, Self-Documenting Display Editor, Proceedings of the ACM-SIGPLAN SIGOA Symposium on Text Manipulation, SIGPLAN Notices 16,6 (June 8–10 1981), 147–156.
Tim Teitelbaum and Thomas Reps, The Cornell Program Synthesizer: A Syntax-Directed Programming Environment, Communications of the ACM 24,9 (September 1981), 563–573.
Michael L. Van De Vanter, “User Interaction in Language-Based Editing Systems”, UCB/CSD-93-726, Ph.D. Dissertation, Computer Science Division, EECS, University of California, Berkeley, December 1992.
Michael L. Van De Vanter, Susan L. Graham and Robert A. Ballance, Coherent User Interfaces for Language-Based Editing Systems, International Journal of Man-Machine Studies 37,4 (1992), 431–466.
Mark Weiser, Program Slicing, IEEE Transactions on Software Engineering SE-10,4 (July 1984), 352–357.
Terry Winograd, Beyond Programming Languages, Communications of the ACM 22,7 (July 1979), 391–401
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Van De Vanter, M.L. (1995). Practical language-based editing for software engineers. In: Taylor, R.N., Coutaz, J. (eds) Software Engineering and Human-Computer Interaction. SE-HCI 1994. Lecture Notes in Computer Science, vol 896. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0035821
Download citation
DOI: https://doi.org/10.1007/BFb0035821
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-59008-8
Online ISBN: 978-3-540-49173-6
eBook Packages: Springer Book Archive