skip to main content
10.1145/3397537.3397560acmotherconferencesArticle/Chapter ViewAbstractPublication PagesprogrammingConference Proceedingsconference-collections
research-article

Visual design for a tree-oriented projectional editor

Published: 04 August 2020 Publication History

Abstract

Projectional editors show promise for a variety of use cases, for example in language composition and domain specific projections. To allow efficient interactions within a projectional editor, it is necessary for the editor to clearly communicate the structure of the program to the user, such that it is clear what editing operations are supported for a given element. Making the abstract syntax tree visible within the editor may provide this clarity, however, it generally also results in considerably increased space usage, potentially also impacting usability. We present an early prototype of a tree-oriented projectional editor for Squeak/Smalltalk that tries to minimize space usage while retaining a clear visualization of the tree structure, balancing the two problems. We describe and discuss our design prototype and do a preliminary evaluation through individual account of experience working with the editor on various projects.

References

[1]
Thorsten Berger, Markus Völter, Hans Jensen, Taweesap Dangprasert, and Janet Siegmund. 2016. Efficiency of projectional editing: a controlled experiment. 763–774.
[2]
Andrew Bragdon, Robert Zeleznik, Steven Reiss, Suman Karumuri, William Cheung, Joshua Kaplan, Christopher Coleman, Ferdi Adeputra, and Joseph Jr. 2010. Code bubbles: A working set-based interface for code understanding and maintenance, Vol. 4. 2503–2512.
[3]
M. Erwig and B. Meyer. 1995. Heterogeneous visual languages-integrating visual and textual programming. In Proceedings of Symposium on Visual Languages. 318–325.
[4]
Adele Goldberg and David Robson. 1983. Smalltalk-80: The Language and Its Implementation. Addison-Wesley Longman Publishing Co., Inc., USA.
[5]
Amy Ko, Htet Aung, and Brad Myers. 2005. Design requirements for more flexible structured editors from a study of programmers’ text editing. 1557–1560.
[6]
David Lane, H. Napier, S. Peres, and Aniko Sandor. 2005. Hidden Costs of Graphical User Interfaces: Failure to Make the Transition from Menus and Icon Toolbars to Keyboard Shortcuts. Int. J. Hum. Comput. Interaction 18 (05 2005), 133–144.
[7]
Eyal Lotem and Yair Chuchem. 2016. Lamdu. https://web.archive.org/web/ 20191002233046/http://www.lamdu.org/
[8]
Piotr Moczurad and Maciej Malawski. 2018. Visual-Textual Framework for Serverless Computation: A Luna Language Approach. 169–174.
[9]
10.1109/UCC-Companion.2018.00052
[10]
Mitchel Resnick, John Maloney, Andrés Monroy-Hernández, Natalie Rusk, Evelyn Eastmond, Karen Brennan, Amon Millner, Eric Rosenbaum, Jay Silver, Brian Silverman, and et al. 2009. Scratch: Programming for All. Commun. ACM 52, 11 (Nov. 2009), 60–67.
[11]
Tamás Szabó, Markus Voelter, Bernd Kolb, Daniel Ratiu, and Bernhard Schaetz. 2014. Mbeddr: Extensible Languages for Embedded Software Development. Ada Lett. 34, 3 (Oct. 2014), 13–16.
[12]
Markus Voelter, Tamás Szabó, Sascha Lisson, Bernd Kolb, Sebastian Erdweg, and Thorsten Berger. 2016. Efficient Development of Consistent Projectional Editors Using Grammar Cells. In Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering (Amsterdam, Netherlands) (SLE 2016). Association for Computing Machinery, New York, NY, USA, 28–40.
[13]
Markus Völter, Janet Siegmund, Thorsten Berger, and Bernd Kolb. 2014. Towards User-Friendly Projectional Editors. 41–61.

Cited By

View all
  • (2024)Talking to Objects in Natural Language: Toward Semantic Tools for Exploratory ProgrammingProceedings of the 2024 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software10.1145/3689492.3690049(68-84)Online publication date: 17-Oct-2024
  • (2023)Structured Editing for All: Deriving Usable Structured Editors from GrammarsProceedings of the 2023 CHI Conference on Human Factors in Computing Systems10.1145/3544548.3580785(1-16)Online publication date: 19-Apr-2023

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
Programming '20: Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of Programming
March 2020
228 pages
ISBN:9781450375078
DOI:10.1145/3397537
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

In-Cooperation

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 August 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Squeak/Smalltalk
  2. projectional editing
  3. visual programming language

Qualifiers

  • Research-article

Conference

<Programming> '20

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)19
  • Downloads (Last 6 weeks)0
Reflects downloads up to 14 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Talking to Objects in Natural Language: Toward Semantic Tools for Exploratory ProgrammingProceedings of the 2024 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software10.1145/3689492.3690049(68-84)Online publication date: 17-Oct-2024
  • (2023)Structured Editing for All: Deriving Usable Structured Editors from GrammarsProceedings of the 2023 CHI Conference on Human Factors in Computing Systems10.1145/3544548.3580785(1-16)Online publication date: 19-Apr-2023

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media