This article is about the concurrent programming languages from Bell Labs. For the Smalltalk dialect, see Squeak. For the children's TV show, see Squeak! For the general meaning of the word, see Wiktionary:squeak.
Paradigm Concurrent
Designed by Rob Pike
Developer Bell Labs
Typing discipline Strong
Influenced by
Alef, Go, Limbo, Rust

Squeak and its successor Newsqueak are concurrent programming languages for writing application software with interactive graphical user interfaces. Squeak was designed by Luca Cardelli and Rob Pike at Bell Labs in the first half of the 1980s; Newsqueak was a further development by Pike. Both languages were presented as "a language for communicating with mice": their main aim was to model the concurrent nature of programs interacting with multiple input devices, viz., keyboards and mice.[1][2]

Newsqueak's syntax and semantics are influenced by the C language, but its approach to concurrency was inspired by C. A. R. Hoare's communicating sequential processes (CSP). However, in Newsqueak, channels are first-class objects, with dynamic process creation and dynamic channel creation.

Newsqueak was developed from an earlier, smaller, language, called Squeak (not to be confused with the Smalltalk implementation Squeak). It was developed by Luca Cardelli and Rob Pike as a language for implementing graphical user interfaces.

The ideas present in Newsqueak were further developed in the programming languages Alef, Limbo, and Go.

See also


  1. Cardelli, Luca; Pike, Rob (1985). Squeak: a language for communicating with mice (PDF). ACM SIGGRAPH.
  2. Pike, Rob. Newsqueak: A Language for Communicating with Mice (PDF) (Technical report). Bell Labs. Computing Science Technical Report No. 143.

This article is issued from Wikipedia - version of the 7/24/2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.