Last updated at 1:22 am UTC on 21 December 2013
This is a bibliography page for papers and articles about Smalltalk and Squeak.
refactorMe All these books should probably be categorized in the Documentation index. Also, all the book pages should probably be merged
updateMe Some of these links are dead
For books, see: Smalltalk-80, Smalltalk & Squeak books, and Free Smalltalk Books
Articles published by BYTE
The entire Byte Aug 81 issue on Smalltalk is available online!
An object lesson from Smalltalk: Yesterday, Today, and Tomorrow by Adele Goldberg and L. Peter Deutsch August 1991
Project DIGITALIS is a Digital Information System for Smalltalk users which contains much information about different Smalltalk systems (including Squeak, ST/MT, VA, VW, ...) as Online Books and Tutorials. Feel free to read or help the author (Cronos) to extend Digitalis. http://www.astares.de/DIGITALIS/
A Report on Interpreted Programming Languages by Xiaoli Zhang & Helen Wong
FranciosPachet offers the following knowledge representation systems implemented in Smalltalk. Code and papers at http://www-laforia.ibp.fr/~fdp/
- Né?°us: rules and object inferencing
- MusES: tonal music representation
- EpiTalk: generates advice and plan recognition
- BackTalk: constraint satisfaction and objects (See Constraint Satisfaction also)
Bytesmiths Smalltalk Publications: articles from The Smalltalk Report at http://www.bytesmiths.com/pubs/
Smalltalk language extensions
Smalltalk history. Interesting papers and sites
Ivan Sutherland's Sketchpad The 1963 thesis that kicked off interactive graphics, etc.
S P A C E W A R Fanatic Life and Symbolic Death Among the Computer Bums by Stewart Brand http://www.wheels.org/spacewar/stone/rolling_stone.html
This is the famous "Rolling Stone" article about Xerox PARC from 1972
The Xerox "Star": A Retrospective
Alan Kay: The Computer Revolution Hasn't Happened Yet!
Alan Kay: Software Design, the Future of Programming and the Art of Learning
Educom Review March/April 99
Wired brings together two legendary minds: Alan Kay and Danny Hillis.
Revealing the Elephant: The Use and Misuse of Computers in Education
Alan Kay: Powerful Ideas Need Love Too!
http://el.www.media.mit.edu/groups/el/events/love-too.html DEAD LINK Dec 03: would really like to find this paper
The Way We Were
A bicycle for the mind
A 1988 paper by Andreas G?(then at University of Dortmund) on implementing message sends with access control between distributed Smalltalk systems: http://www.heeg.de/~georg/guendel.htm Yes, we've been doing this kind of stuff long before Java was even thought of...
A 1998 article in Wired magazine about Squeak, including discussion with Alan Kay, Dan Ingalls, Tim Rowledge, and Mark Guzdial. http://www.wired.com/news/technology/0,1282,16833,00.html
Brian Foote, Ralph Johnson; Reflective Facilities in Smalltalk-80 (OOPSLA '89) http://laputa.isdn.uiuc.edu/ref89/ref89.html
Most of Stephen Travis Pope's papers on the DoubleTalk
Simula and Smalltalk: A Social and Political History http://www.cebollita.org/dugan/history.html
[I find this paper to be a bogus politicial interpretation of history from afar. Sort of like a Marxist interpretation of a college football game. Don't waste your time. –Ted Kaehler] Funny how wrong some people can be. This paper is a well-needed ballon-pricking, and everyone who seriously considers programming should read it. (Tim Rowledge says - I found it modest in aims and modest in achievement; hardly sharp enough to prick any balloons...)
Information of interest and possible value to the future development of Squeak toward the blue plane (Blue plane defined: Squeak's Place in the Universe). This can include websites, papers, articles, books, research topics, random thoughts.
- The Art of the Metaobject Protocol; Gregor Kiczales, Jim des Riviè²¥s, 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.
Matthew Fuchs, PhD., now works for Walt Disney Imagineering in the Virtual Reality Lab. Of special interest is his approach to GUI design and programming using a continuation passing style ("contexts" in Smalltalk) to avoid fragmenting 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
Reflection Metaobject Protocols.
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. http://progwww.vub.ac.be/pools/lens
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://progwww.vub.ac.be/pools/agora
- Smalltalk: Agora94
- C++: Agora96
- Java: Agora98
- Scheme: Agora-S
Interesting GUI approaches
Tunes project, Paris, France. Reviews of Operating Systems, Programming Languages, and very many related concepts. Has over 1,000 links to resources. See DavidManifold
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.
Delayed Code Generation in a Smalltalk-80 Compiler by Ian Piumarta – generating native machine code from Smalltalk – the 68020 is used as an example (note: this paper is in Postscript and cannot be properly viewed or printed by Ghostscript but will print fine on a Postscript printer)
Replication-based garbage collection
Some representative papers:
- Scott Nettles, James O'Toole, David Pierce, Nicholas Haines; Replication-Based Incremental Copying Collection; September 1992.
- Scott Nettles, James O'Toole; Real-Time Replication-Based Garbage Collection; June 1993.
- Scott Nettles, James O'Toole; Implementing Orthogonal Persistence: A Simple Optimization Based on Replicating Collection; December 1993.
- James O'Toole, Scott Nettles, David Gifford; Concurrent Compacting Garbage Collection of a Persistent Heap; December 1993.
- More: http://www.psrg.lcs.mit.edu/publications.html
Object Systems Group
Bibliography. Large number of online papers covering wide range of OOP topics and issues. Of special interest to Smalltalk VM hackers:
- Jan Vitek, Compact Dispatch Tables for Dynamically Typed Programming Languages.
- Jan Vitek, R. Nigel Horspool, Compacting Dispatch Tables for Dynamically Typed Object Oriented Languages.
- Karel Driesen, Urs Hoelzle, Jan Vitek, Message Dispatch on Pipelined Processors.
- Jan Vitek, R. Nigel Horspool, Taming Message Passing: Efficient method lookup for dynamically typed object-oriented languages.
MaryBeth Rossen and John Carroll
A number of papers on smalltalk garbage collection theory in Visualworks can be found at http://www.smalltalkconsulting.com/papers/papersandpresentations.html