We articulate a vision for computer programming that includes pen-based computing, a paradigm we term notational programming. Notational programming blurs contexts: certain typewritten variables can be referenced in handwritten notation and vice-versa. To illustrate this paradigm, we developed an extension, Notate, to computational notebooks which allows users to open drawing canvases within lines of code. As a case study, we explore quantum programming and designed a notation, Qaw, that extends quantum circuit notation with abstraction features, such as variable-sized wire bundles and recursion. Results from a usability study with novices suggest that users find our core interaction of implicit cross-context references intuitive, but suggests further improvements to debugging infrastructure, interface design, and recognition rates. Throughout, we discuss questions raised by the notational paradigm, including a shift from recognition' of notations to reconfiguration' of practices and values around programming, and from sketching' to writing and drawing, or what we call notating.'
CITATION STYLE
Arawjo, I., Dearmas, A., Roberts, M., Basu, S., & Parikh, T. (2022). Notational Programming for Notebook Environments: A Case Study with Quantum Circuits. In UIST 2022 - Proceedings of the 35th Annual ACM Symposium on User Interface Software and Technology. Association for Computing Machinery, Inc. https://doi.org/10.1145/3526113.3545619
Mendeley helps you to discover research relevant for your work.