Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Smalltalk
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Influences== Smalltalk was one of many object-oriented programming languages based on [[Simula]].<ref>The Simula language was also object-oriented and preceded (and was acknowledged as an influence on) Smalltalk but it was a simulation language, not a general purpose programming language.</ref> Smalltalk is also one of the most influential programming languages.{{Citation needed|date=April 2024}} Virtually all of the object-oriented languages that came after—[[Flavors (programming language)|Flavors]],<ref>{{cite web|last=Cannon|first=Howard|title=Flavors A non-hierarchical approach to object-oriented programming|url=http://www.softwarepreservation.org/projects/LISP/MIT/nnnfla1-20040122.pdf|work=softwarepreservation.org|access-date=17 December 2013}}</ref> [[CLOS]], [[Objective-C]], [[Java (programming language)|Java]], [[Python (programming language)|Python]], [[Ruby (programming language)|Ruby]],<ref>{{cite web|title=About Ruby|url=https://www.ruby-lang.org/en/about/|work=ruby-lang.org|access-date=17 December 2013}}</ref> and many others—were influenced by Smalltalk. Smalltalk was also one of the most popular languages for [[agile software development]] methods, [[rapid application development]] (RAD) or prototyping, and [[software design pattern]]s.<ref>{{cite web|title=Where Did Refactoring Come From?|url=http://sourcemaking.com/refactoring/where-did-refactoring-come-from|work=sourcemaking.com|access-date=17 December 2013}}</ref> The highly productive environment provided by Smalltalk platforms made them ideal for rapid, iterative development. Smalltalk emerged from a larger program of [[Advanced Research Projects Agency]] (ARPA) funded research that in many ways defined the modern world of computing. In addition to Smalltalk, working prototypes of things such as [[hypertext]], GUIs, [[multimedia]], the mouse, [[telepresence]], and the Internet were developed by ARPA researchers in the 1960s.<ref>{{cite web|title=DARPA – ARPA|url=http://www.livinginternet.com/i/ii_darpa.htm|work=livinginternet.com|access-date=16 December 2013|quote=To meet this need, ARPA established the IPTO in 1962 with a mandate to build a survivable computer network to interconnect the DoD's main computers at the Pentagon, Cheyenne Mountain, and SAC HQ.}}</ref><ref>{{cite web|title=Engelbart's Role in Early Computer Networking|url=http://www.dougengelbart.org/firsts/internet.html|work=dougengelbart.org|access-date=17 December 2013}}</ref> Alan Kay (one of the inventors of Smalltalk) also described a tablet computer he named the [[Dynabook]] which resembles modern tablet computers like the iPad.<ref name="History"/> Smalltalk environments were often the first to develop what are now common object-oriented software design patterns. One of the most popular is the [[model–view–controller]] (MVC) pattern for [[user interface]] design. The MVC pattern enables developers to have multiple consistent views of the same underlying data. It's ideal for software development environments, where there are various views (e.g., entity-relation, dataflow, object model, etc.) of the same underlying specification. Also, for simulations or games where the underlying model may be viewed from various angles and levels of abstraction.<ref>{{cite journal|last1=Krasner|first1=Glen|last2=Pope|first2=Stephen|title=A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk -80|journal=Journal of Object-Oriented Programming|date=August–September 1988}}</ref> In addition to the MVC pattern, the Smalltalk language and environment were influential in the history of the [[graphical user interface]] (GUI) and the ''what you see is what you get'' ([[WYSIWYG]]) user interface, font editors, and desktop metaphors for UI design. The powerful built-in debugging and object inspection tools that came with Smalltalk environments set the standard for all the [[integrated development environment]]s, starting with [[Lisp Machine]] environments, that came after.<ref>{{cite web|title=Our Influence|url=http://www.cincomsmalltalk.com/main/about-us/the-big-influence-of-smalltalk/|work=cincomsmalltalk.com|access-date=16 December 2013}}</ref> Smalltalk uses several collection filter operators that rhyme with the "-ect" suffix, collect:, select:, inject:into:, et al. This was inspired by a line from the 1967 [[Arlo Guthrie]] monologue "[[Alice's Restaurant Massacree]]," in which Guthrie underwent a battery of being "injected, inspected, detected, infected, neglected and selected."<ref>{{Cite web |date=2014-04-29 |title=Injected, Inspected, Detected, Infected, Neglected and Selected |url=https://news.squeak.org/2014/04/29/injected-inspected-detected-infected-neglected-and-selected/ |access-date=2024-04-15 |website=The Weekly Squeak |language=en}}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)