Last updated at 9:44 pm UTC on 3 November 2006
Information of interest and possible value to the future development of Squeak toward the blue plane (Blue plane defined: MIT License). This can include websites, papers, articles, books, research topics, random thoughts.
Matthew Fuchs, PhD papers on his approach to GUI design and programming using a continuation passing style ("contexts" in Smalltalk) to avoid the fragmentation of programs and logic flow caused by normal event oriented GUI programming. Escaping the event loop: an alternative control structure for multi-threaded GUIs http://cs.nyu.edu/phd_students/fuchs
- The Art of the Metaobject Protocol; Gregor Kiczales, Jim des Rivières, and Daniel G. Bobrow, MIT Press, 1991, ISBN 0-262-61074-4.
- Object-Oriented Programming: The CLOS Perspective; Andreas Paepcke ed., MIT Press, 1993, ISBN 0-262-16136-2.
Metaobject Protocols. Papers and related sites: http://www.parc.xerox.com/spl/projects/mops
Aspect-Oriented Programming: http://www.parc.xerox.com/spl/projects/aop/default.html
Computational Reflection and Meta-level Architectures:
Programming Technology Lab (PROG), Vrije Universiteit Brussel
OO language based on late binding (via message passing), pure (i.e. mixin-based) inheritance and object-based encapsulation. Agora (below) takes a similar approach.
Reflective, prototype based, object oriented programming language, based wholly on message passing. Has a syntax rather like Smalltalk but approaches creating objects, inheritance, etc., very differently. http://prog.vub.ac.be/research/agora/
Smalltalk: Agora94. C++: Agora96.
Java: Agora98. Scheme: Agora-S.
Interesting GUI approaches:
Pad++ Zoomable Interface http://www.cs.unm.edu/pad++/begin.html The Magic Lens Interface Project http://www.parc.xerox.com/istl/projects/MagicLenses
Tunes project, Paris, France. Reviews of Operating Systems, Programming Languages, and very many related concepts. Has over 1,000 links to resources. See DavidManifold andhttp://www.tunes.org/~tunes/doc(URL seems to be outdated. Perhaps:http://cliki.tunes.org/Programming%20Languages ?)
Programming by Example
In computer interfaces, users must often do the same or similar sequences of operations repeatedly, sometimes in different situations. If computers are so good at repetition, why are users the ones who keep repeating things?
"Programming by example", or "programming by demonstration", is a method to teach computers new behavior by demonstrating actions on concrete examples. The system records user actions and generalizes a program that can be used in the original and new examples.http://lcs.www.media.mit.edu/people/lieber/PBE
It it possible to have interfaces in Squeak as with Java; seeInterfaces