Smalltalk
Smalltalk is a class-based OO programming language with reflective capabilities.Smalltalk can be viewed as an OS of sorts, more so if it is not running on another OS. It is fine grained, having 30,000-60,000 objects, rooted in some 200 classes; some big Smalltalk systems have over 1 million objects. No differentiation-separation is made between System and Application software: it's all one big sea of objects. It has no-kernel properties; but the VM serves a similar purpose. It has extensive, relentless boundary checking.
It is the most consistent OO language. Everything is an object, no exception: every number, letter. No object can directly affect the state of another object, only indirectly, by messages. No pointer arithmetic can occur.
Smalltalk was inspired by Simula. Smalltalk was developed under Alan Kay's team, at Xerox PARC in the 1970s and early 1980s. Xerox famously sat on some amazing technologies, throwing away many great opportunities, later developed instead by other companies: Ethernetworking (3com), Postscript (Adobe), laser printers (Apple), windowing graphic user interfaces (Apple, Microsoft), and Smalltalk (ParcPlace-Digitalk is now in much trouble due to overpricing Smalltalk).
Then Apple Computer's Steve Jobs got Kay and many of the PARC team to move to Apple. Some of the Smalltalk team moved to Digitalk. Then some Digitalkers moved to Apple. Sometime during all this, Apple licensed Smalltalk-80.
As corporate America often did and does, Apple sat on advanced stuff it had, and did nothing with it. In the meantime, IBM developed Visual Age, and now has 20,000-30,000 Smalltalk programmers.
- Draft ANSI Smalltalk (.html).
- Simula and Smalltalk: A Social and Political History
- Ted Kaehler's WWW Site
- Reflective frameworks for Smalltalk:
- MetaClassTalk
- SOUL: Logic metaprogramming as the Smalltalk Open Unification Language.
- AspectS: aspect-oriented programming in Smalltalk.
- SmallTalk Chronicles.
- Squeak
- GNU Smalltalk
- Little Smalltalk
- Strongtalk, an optionally strongly-typed Smalltalk dialect with a fast and light optimizing implementation.
- Smalltalk/X
- (MIA) Smalltickle is a Smalltalk-like programming language.
- Actalk for smalltalkagents.
- Actalk is a Smalltalk framework for concurrent programming.
- Apostle is an Smalltalk AOP extension.
- Bistro is a Java based Smalltalk variation.
- Bluebook is Smalltalk-80: The Language and Its Implementation.
- Coda is a meta-level architecture?. Implemented in Smalltalk.
- Cvst is CVS? for Smalltalk projects.
- DPBS is "Design Principles Behind Smalltalk".
- Delitalk is Delicate Smalltalk, a truly object-oriented OS, based on the Smalltalk concept.
- Deltatalk is "Deltatalk: An Empirically and Aesthetically Motivated Simplification of the Smalltalk-80 Language".
- ELST is Embedded Lisps in SmallTalk-80.
- FSB is Free Smalltalk Books.
- Flow is a streaming framework for Smalltalk.
- Gnu SmallTalk.
- HHGTTSP is "the Hitch Hiker's Guide to the Smalltalk Compiler".
- HLPS is HyperLiterate Programming in Smalltalk
- HMM is Hans-Martin Mosner.
- Hush is an object-oriented programming language, based loosely on Smalltalk.
- Jist is Java In Smalltalk.
- Littlesmalltalk is an open tiny version of Smalltalk.
- Metaclasstalk is a reflective extension for Smalltalk.
- Neoclasstalk is a Smalltalk with explicit metaclasses.
- PortedObjects.
- Prototalk is a SmallTalk-based platform for prototype-based programming language simulation.
- PocketSmalltalk is a Windows-based SmallTalk cross development environment for the Palm platform (and others?)
- Satori is a SmallTalk-80 superset.
- Sic is Smalltalk-based Interactive Compiler-compiler.
- SmallJava - Using Language Transformation to Show Language Differences.
- Smallscript is a Smalltalk superset.
- Smalltalk online.
- Smalltick is a Smalltalk-like object system in Tcl.
- Soul/aop is aspect-oriented logic meta programming in Smalltalk.
- Soul is Smalltalk Open Unification Language, an open reflective logic meta programming language, aka Prolog in Smalltalk.
- Srnc-st is Signature Revealing Naming Convention for Smalltalk.
- St cookbook is the Smalltalk cookbook
- Swazoo is Smalltalk Web Application ZOO.
- Tj is a distributed object system.
- Vibes is a data analysis and visualization toolkit based on PortedObjects.
- Wysitex is a WYSIWYG editor for TeX? written in Smalltalk.
Unsorted
This page is linked from: Abora AspectS Caper Cel Design Pattern DWIM Inheritance Io Java kew Linear Logic Comments Model-View-Controller Object-Oriented Objective-C Parsing Python Reflective Programming Languages Resilient Ruby Self Sina Slate Slate 101 Squeak Squeak VM The True Story of Ada Trotskyite Tunes