Abstract
Structure editors emphasise a natural representation of the underlying tree structure of a program, often using a clearly identifiable 1-to-1 mapping between syntax tree elements and on-screen artefacts. This paper presents layout and behaviour principles for structure editors and a new structure editor for Lisp. The evaluation of the editor’s usability reveals an interesting mismatch. Whereas by far most participants of a questionnaire intuitively favour the structure editor to the textual editor, objective improvements are measurable, yet not significant.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
References
Hansen, W.J.: User engineering principles for interactive systems. In: Proceedings of the 1971 Fall Joint Conference (AFIPS 1971), pp. 523–532 (1971)
Borras, P., Clement, D., Despeyroux, T., Incerpi, J., Kahn, G., Lang, B., Pascual, V.: Centaur: the system. In: Proceedings of the Third ACM SIGSOFT/SIGPLAN Software Engineering Symposium on Practical Software Development Environments, pp. 14–24 (1988)
Ballance, R.A., Graham, S.L., van de Vanter, M.L.: The Pan language-based editing system. ACM Transactions on Software Engineering Methodology (TOSEM) 1, 95–127 (1992)
Ko, A.J., Myers, B.A.: Barista: An implementation framework for enabling new tools, interaction techniques and views in code editors. In: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI 2006), pp. 387–396 (2006)
Teitelbaum, T., Reps, T.: The Cornell Program Synthesizer: A Syntax-Directed Programming Environment. Communications of the ACM 24, 563–573 (1981)
Dimitriev, S.: Language Oriented Programming: The Next Programming Paradigm. onBoard 1 (2004)
Edwards, J.: No Ifs, Ands, or Buts - Uncovering the Simplicity of Conditionals. In: Proceedings of the 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems and Applications, OOPSLA 2007 (2007)
McCarthy, J.: Recursive functions of symbolic expressions and their computation by machine, Part I. Communications of the ACM 3, 184–195 (1960)
Humm, B.G., Engelschall, R.S.: Language-oriented Programming via DSL Stacking. In: Proceedings of the 5th International Conference on Software and Data Technologies (ICSOFT 2010), pp. 279–287 (2010)
Jasko, T., Ritchey, T.: CUSP. A Lisp plugin for Eclipse, http://www.bitfauna.com/projects/cusp/
The Eclipse Foundation: GEF and Draw2d Plug-in Developer Guide, http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse.gef.doc.isv/guide.html
Dumas, J.S., Redish, J.C.: A practical guide to usability testing. Intellect Books, Exeter (1999)
Bevan, N.: Measuring usability as quality of use. Software Qual. J. 4, 115–130 (1995)
Schalles, C., Rebstock, M., Creagh, J.: Ein generischer Ansatz zur Messung der Benutzerfreundlichkeit von Modellierungssprachen. In: Engels, G., Karagiannis, D., Mayr, H.C. (eds.) Modellierung 2010, Klagenfurt, Austria, Märch 24-26, vol. 161, pp. 15–30. GI, Bonn (2010)
Donzeau-Gouge, V., Huet, G., Kahn, G., Lang, B.: Programming Environments based on Structured Editors: The MENTOR Experience. Institut National de Recherche d’Information et d’Automatique (INRIA), Rocquencourt (1980)
Burton, R.R., Masinter, L.M., Bobrow, D.G., Haugeland, W.S., Kaplan, R.M., Sheil, B.A.: Overview and status of DoradoLisp. In: Proceedings of the 1980 ACM Conference on LISP and Functional Programming (LFP 1980), pp. 243–247 (1980)
Yurov, A.: Program Tree Editor, http://www.programtree.com/
Osenkov, K.: Designing, implementing and integrating a structured C# code editor. Brandenburg University of Technology, Cottbus (2007)
Simonyi, C., Christerson, M., Clifford, S.: Intentional software. In: Proceedings of the 21st Annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications, OOPSLA 2006 (2006)
Brooks, F.P.: No Silver Bullet: Essence and Accidents of Software Engineering. IEEE Computer 20, 10–19 (1987)
Conway, M., Audia, S., Burnette, T., Cosgrove, D., Chistiansen, K.: Alice: lessons learned from building a 3D system for novices. In: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI 2000), pp. 486–493 (2000)
Myers, B.A., Pane, J.F., Ko, A.: Natural programming languages and environments. Communications of the ACM 47, 47–52 (2004)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Gomolka, A., Humm, B. (2013). Structure Editors: Old Hat or Future Vision?. In: Maciaszek, L.A., Zhang, K. (eds) Evaluation of Novel Approaches to Software Engineering. ENASE 2011. Communications in Computer and Information Science, vol 275. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-32341-6_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-32341-6_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-32340-9
Online ISBN: 978-3-642-32341-6
eBook Packages: Computer ScienceComputer Science (R0)