Reconstructing the Pygmalion programming environment
Název práce v češtině: | Reconstructing the Pygmalion programming environment |
---|---|
Název v anglickém jazyce: | Reconstructing the Pygmalion programming environment |
Klíčová slova: | programming by demonstration|history of programming|pygmalion|programming environments |
Akademický rok vypsání: | 2023/2024 |
Typ práce: | bakalářská práce |
Jazyk práce: | |
Ústav: | Katedra distribuovaných a spolehlivých systémů (32-KDSS) |
Vedoucí / školitel: | Mgr. Tomáš Petříček, Ph.D. |
Řešitel: | skrytý - zadáno a potvrzeno stud. odd. |
Datum přihlášení: | 26.09.2023 |
Datum zadání: | 26.09.2023 |
Datum potvrzení stud. oddělením: | 23.11.2023 |
Zásady pro vypracování |
Pygmalion [1] is an early programming by demonstration [4] system developed at Xerox PARC in the 1970s. It pioneered many later influential ideas such as the use of icons or the use of "remembering mode" (macro recording) for constructing reusable logic. Despite being very influential, Pygmalion is not something one can readily run. It was implemented in Smalltalk-72 and the source code is available as an appendix of a poorly scanned PhD thesis.
The aim of the thesis is to create a reconstruction of a small subset of the Pygmalion system. The author will implement a basic programming system that will follow the style of interaction introduced in Pygmalion. The system should allow users to construct one of the basic case studies described in the Pygmalion report, such as the construction of the factorial function. It should follow the interaction pattern of Pygmalion, but it is expected that it will not be fully accurate and the author will need to develop their own design for aspects not documented well enough in the original report. The thesis is not expected to result in a rich programming system, but it should include a critical reflection on the differences between Pygmalion and the developed system. In this, the thesis may follow other such "reconstructions" [2]. The resulting project should be available as an interactive web application, possibly utilizing the F# Elmish framework [3]. |
Seznam odborné literatury |
[1] Smith, D.C., Pygmalion: a creative programming environment. Stanford University, 1975.
[2] Petricek, T., The Lost Ways of Programming: Commodore 64 BASIC. 2020, Available at: https://tomasp.net/commodore64/, Accessed 9/2023 [3] Ajaj, Z., The Elmish Book. Available at: https://zaid-ajaj.github.io/the-elmish-book/, Accessed 9/2023 [4] Cypher, A, Halbert, D. C., eds. Watch what I do: programming by demonstration. MIT press, 1993. |