Printer Friendly
Dictionary, Encyclopedia and Thesaurus - The Free Dictionary
3,898,281,538 visitors served.
forum Join the Word of the Day Mailing List For webmasters
?
Dictionary/
thesaurus
Medical
dictionary
Legal
dictionary
Financial
dictionary
Acronyms
 
Idioms
Encyclopedia
Wikipedia
encyclopedia
?

Smalltalk
(redirected from SmallTalk programming language)

   Also found in: Wikipedia 0.01 sec.
Smalltalk
An operating system and object-oriented programming language that was developed at Xerox PARC. As an integrated environment, it eliminates the distinction between programming language and operating system. It also allows its user interface and behavior to be customized.

Smalltalk was the first object-oriented programming language to become popular. It was originally used to create prototypes of simpler programming languages and the graphical interfaces that are so popular today. Smalltalk was first run on Xerox's Alto computer, which was designed for it. In 1980, Smalltalk-80 was licensed to Tektronix, Apple, HP and TI for internal use. The first commercial release of Smalltalk was Methods from Digitalk in 1983, which later evolved into Visual Smalltalk. In 1997, Smalltalk became an ANSI standard (X3J20). See VisualWorks, Visual Smalltalk, VisualAge and Alto.
(language)Smalltalk - The pioneering object-oriented programming system developed in 1972 by the Software Concepts Group, led by Alan Kay, at Xerox PARC between 1971 and 1983. It includes a language, a programming environment, and an extensive object library.

Smalltalk took the concepts of class and message from Simula-67 and made them all-pervasive. Innovations included the bitmap display, windowing system, and use of a mouse.

The syntax is very simple. The fundamental construction is to send a message to an object:

object message

or with extra parameters

object message: param1 secondArg: param2 .. nthArg: paramN

where "secondArg:" etc. are considered to be part of the message name.

Five pseudo-variables are defined: "self", "super", "nil", "true", "false". "self" is the receiver of the current message. "super" is used to delegate processing of a message to the superclass of the receiver. "nil" is a reference to "nothing" (an instance of UndefinedObject). All variables initially contain a reference to nil. "true" and "false" are Booleans.

In Smalltalk, any message can be sent to any object. The recipient object itself decides (based on the message name, also called the "message selector") how to respond to the message. Because of that, the multiple inheritance system included in the early versions of Smalltalk-80 appeared to be unused in practice. All modern implementations have single inheritance, so each class can have at most one superclass.

Early implementations were interpreted but all modern ones use dynamic translation (JIT).

Early versions were Smalltalk-72, Smalltalk-74, Smalltalk-76 (inheritance taken from Simula, and concurrency), and Smalltalk-78, Smalltalk-80. Other versions include Little Smalltalk, Smalltalk/V, Kamin's interpreters. Current versions are VisualWorks, Squeak, VisualAge, Dolphin Smalltalk, Object Studio, GNU Smalltalk.

See also: International Smalltalk Association.

UIUC Smalltalk archive. FAQ.

Usenet newsgroup: news:comp.lang.smalltalk.

["The Smalltalk-76 Programming System Design and Implementation", D.H. Ingalls, 5th POPL, ACM 1978, pp. 9-16].


Want to thank TFD for its existence? Tell a friend about us, add a link to this page, add the site to iGoogle, or visit the webmaster's page for free fun content.
?Page tools
Printer friendly
Cite / link
Feedback
Mentioned in?  References in periodicals archive?   Encyclopedia browser?   Full browser?
No references found
 
Smalltalk Programming Language Gains Ground in Global E & P Sector and Other Significant Vertical Markets HOUSTON -- Senior software developer Dr.
VisualWave is based on the ParcPlace Smalltalk programming language, which is designed for high-speed, high-performance application development.
VisualWave is based on the proven ParcPlace Smalltalk programming language, an open, ANSI-compliant language designed for high-speed, industrial-strength application development.
 
 
 
Encyclopedia
?

Terms of Use | Privacy policy | Feedback | Advertise with Us | Copyright © 2012 Farlex, Inc.
Disclaimer
All content on this website, including dictionary, thesaurus, literature, geography, and other reference data is for informational purposes only. This information should not be considered complete, up to date, and is not intended to be used in place of a visit, consultation, or advice of a legal, medical, or any other professional.