3 ms·
Interesting to see again the concept of a "Programmer's Apprentice" after so many years. Initial Report on a LISP Programmer's Apprentice https://dspace.mit.ed
by magoghm 8y ago
Interesting to see again the concept of a "Programmer's Apprentice" after so many years.
Initial Report on a LISP Programmer's Apprentice
https://dspace.mit.edu/handle/1721.1/6920 https://dspace.mit.edu/handle/1721.1/6920
The Programmer's Apprentice: Knowledge Based Program Editing
https://www.researchgate.net/publication/220071274_The_Programmer's_Apprentice_Knowledge_Based_Program_Editing https://www.researchgate.net/publication/220071274_The_Progr...
Both of those papers are included in the 1984 book "Interactive Programming Environments"
https://www.amazon.com/Interactive-Programming-Environments-David-Barstow/dp/0070038856/ref=sr_1_1?ie=UTF8&qid=1538811280&sr=8-1&keywords=interactive+programming+environments https://www.amazon.com/Interactive-Programming-Environments-...
That book also has many other interesting papers like "The UNIX Programming Environment", "EMACS: The Extensible, Customizable, Self-Documenting, Display Editor", and "The LISP Machine"
- mncharity 8y agoA blast from the past. But one which I've been thinking about again lately. VR/AR will change IDE/PA UI constraints. Alter the economics of information display. "Screen" real estate gets cheaper. There's more opportunity for "I'm just guessing, and you probably don't actually want this, but just in case, it's here off to the side, where it won't bother you, but is available at a glance". "Oh, you just typed an import statement for an npm module on github? Well... just in case, of to the side, here are its npmtrends, alternative modules, recent news and discussion, analysis of repo, of code, of forks, of issues, of its dev community and individuals, a performance profile from its test suite, ... [90% cache hit with week-old tolerance; $0.05 spent on Lambda/GCP for update; the following items are also available...]"
- mark_l_watson 8y agoI agree. I thought of the Do What I Mean (DWIM) part of the Xerox 1108 Lisp Machine when I first started reading this article. Unlike some of the other commentators here, I think this is a rational approach to building an assistant pair programmer. For sceptics, I would point you research for writing code from technical papers (e.g., https://www.ibm.com/blogs/research/2018/02/deep-learning-models/ https://www.ibm.com/blogs/research/2018/02/deep-learning-mod...)