While learning the design pattern written by Gof, I meet the programming language Smalltalk, after a simple research, I found it is the source of several commen language such like Java, Ruby…
So, I think it’s necessary to learn smalltalk.
Smalltalk is an object-oriented, dynamically typed reflective programming language.
Smalltalk was created as the language underpinning the “new world” of computing exemplified by “human-computer symbiosis”.
Smalltalk was designed and created in part for educational use, specifically for constructionist learning, at the Learning Research Group (LRG) of Xerox PARC by Alan Kay, Dan Ingalls, Adele Goldberg, Ted Kaehler, Diana Merry, Scotte Wallace, and others during the 1970s.
Smalltalk was first generally released as Smalltalk-80.
ANSI Smalltalk was ratified in 1998., represents the standard version of Smalltalk.
The first hardware-environments which run the Smalltalk VMs were Xerox Alto computers.
Reflection is a term that computer scientists apply to software programs that have the ability to inspect their own structure, for example their parse tree or data types of input and output paramters.
From smalltalk.org, there are many excellent Smalltalk Systems, open source and commericial.
OpenSource (License)
Pharo Smalltalk (MIT).
Squeak Smalltalk (MIT, portions Apache).
Cuis Smalltalk (MIT).
GNU Smalltalk (GPL).
Dolphin Smalltalk (MIT)
Amber Smalltalk (MIT).
Redline Smalltalk (MIT).
Essence# Smalltalk (BSD).
Susie Scripting Smalltalk (Public Domain).
Little Smalltalk (Various, Public Domain, MIT, …).
Bee Smalltalk. (MIT), release coming soon apparently. GitHub. Bee Blog. Paper (PDF).
Newspeak Lanaguage (Apache 2.0 license, portions MIT).
Scratch Smalltalk Wiki (GPLv2 and Scratch Source Code License).
Commercial
Cincom VisualWorks Smalltalk
Instantiations VisualAge Smalltalk
GemTalkSystems Database Server Smalltalk
Smalltalk/MT
Smalltalk/X (Free to use).
Pharo and Squeak maybe the most two populare variants of smalltalk.
To certain extent, it is a matter of personal taste.
Pharo is a fork of Squeak intended make it more modern version of Smalltalk, sometimes at expense of not sticking to backward compatibility to Squeak.
Basically, Squeak is classic Smalltalk and Pharo is Smalltalk inspired.
有几位Smalltalk-80的实现着都参与到了Squeak中,包括Alan Kay, Daniel Ingall.
夜行人 博客
鉴于我的目的是为了更好地理解计算机世界,因此选择从Squeak入手。