Ampleforth: A Live Literate EditorVirtual
Ampleforth is an editor for rich text documents with embedded media, including arbitrary interactive user interface elements. These may themselves be transcluded Ampleforth documents. Ampleforth documents are Newspeak objects and therefore naturally have a dynamic scope which can be used to reference live objects within them. Documents then mesh naturally with exemplar support in the IDE, making it easy to write code in the scope of the document and evaluate it live at any point. A document contains a markup program that runs in the document’s scope. Executing the markup subsumes the concept of weaving a literate program. The structured view of code provided by a Smalltalk-style IDE likewise subsumes tangling.
The system allows for either WYSIWYG or markup editing (or a mix of both), and maintains a live bidirectional relation between the two. Ampleforth runs in the web browser, and has the potential to replace a wide variety of editing tools such as word processors, presentation managers, GUI builders, computational notebooks and more. The editor is written in the Newspeak programming language, and incorporates a complete Newspeak IDE, enabling Ampleforth to be scripted and modified live within itself. We discuss Ampleforth’s design, implementation and use. We believe the design principles of Ampleforth extend beyond documents to much more general virtual worlds.
Gilad Bracha is the creator of the Newspeak programming language and a well known researcher in the area of object-oriented programming languages. He was awarded the senior Dahl-Nygaard prize in 2017. He is currently a Technical Fellow at F5, and has held positions at Google, SAP Labs, Cadence, and Sun. He has authored or co-authored several books including the Java Language and Virtual Machine Specifications, and the Dart Programming Language. Prior to joining Sun, he worked on Strongtalk, the Animorphic Smalltalk System. He received his B.Sc in Mathematics and Computer Science from Ben Gurion University in Israel and a Ph.D. in Computer Science from the University of Utah.
Tue 6 DecDisplayed time zone: Auckland, Wellington change
15:30 - 17:00 | Talks IIILIVE at Seminar Room LG004 Chair(s): Jun Kato National Institute of Advanced Industrial Science and Technology (AIST), Sam Lau University of California at San Diego | ||
15:30 10mShort-paper | Education-aware Interactive Machine Teaching: Training Autonomous Game AgentsVirtual LIVE Chunqi Zhao , I-Chao Shen , Tsukasa Fukusato The University of Tokyo, Jun Kato National Institute of Advanced Industrial Science and Technology (AIST), Takeo Igarashi The University of Tokyo | ||
15:40 10mShort-paper | Flowie, a Collaborative Projection EditorIn-person LIVE | ||
15:50 20mTalk | Meta-programmable functional notebooks with LivebookPre-recorded LIVE José Valim Dashbit | ||
16:10 20mTalk | Live 2D Compositional ProgrammingIn-person LIVE Michael Homer Victoria University of Wellington Link to publication | ||
16:30 20mTalk | Ampleforth: A Live Literate EditorVirtual LIVE Gilad Bracha F5 |