Smalltalk
Download
1 / 15

Smalltalk - PowerPoint PPT Presentation


  • 284 Views
  • Updated On :

Smalltalk. Mark Colangelo CMSC-631, Fall 2002 10 December 2002. History of Smalltalk. Alan Kay designed and build the first OOP-based personal Computer called FLEX in 1967-68 In 1967 Simula 67 was designed

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Smalltalk' - omer


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Smalltalk l.jpg

Smalltalk

Mark Colangelo

CMSC-631, Fall 2002

10 December 2002


History of smalltalk l.jpg
History of Smalltalk

  • Alan Kay designed and build the first OOP-based personal Computer called FLEX in 1967-68

  • In 1967 Simula 67 was designed

  • In 1972 Alan Kay and other and XEROX PARC Created Smalltalk 72 with roots tied to Simula 67

  • Followed by Smalltalk 76 (Completely OOPL)

  • Followed by Smalltalk 80 which became available as the first commercial release of Smalltalk


Smalltalk in the real world l.jpg
Smalltalk in the Real World

  • Financial

    • Chubb

    • Chrysler

    • Dunn and Bradstreet, several other

  • Manufacturing and Engineering

    • Texas Instruments

    • Romax (Simulation Software)


Free implemenations of smalltalk l.jpg
Free Implemenations of Smalltalk

  • Squeak (Smalltalk for Win , Mac and others)

    • http://www.squeak.org/download/index.html

  • GNU Smalltalk (Unix systems only)

    • http://www.gnu.org/software/smalltalk/smalltalk.html


Installation of squeak l.jpg
Installation of Squeak

  • Installation of Squeak is trivial

  • Download zip file

    • Squeak3.2.image

    • Squeak3.2.changes

    • SqueakV3.sources

    • Squeak VM for your system, version 3.2

  • Doubleclick Squeak image. No other installation is required





Exending hello world l.jpg
Exending Hello World

hello

1 to: 3 do: [:i | (Transcript show: 'Hello World') cr]

Gives:

Hello World

Hello World

Hello World


Adding logic to hello world l.jpg
Adding Logic to Hello World

hello: times

(times > 100)

ifTrue: [ Transcript show: 'You will get bored!'] ifFalse: [1 to: times do: [:i | (Transcript show: 'Hello World') cr]]


Final hello world l.jpg
Final Hello World

hello: times say: text

(times > 100)

ifTrue: [ Transcript show: 'You will get bored!'] ifFalse: [1 to: times do: [:i | (Transcript show: text) cr]]


Syntax observations l.jpg
Syntax Observations

  • Any variable can store any object. Object keeps track of what it is.

  • Could pass an integer into the text parameter. No error until the Transcript tried to show it.


Messaging l.jpg
Messaging

  • Always pass messages to an object

  • the colon syntax for parameter passing looks a lot like the colon syntax for loops--and logic, for that matter. That's because it's exactly the same.

  • hello:say, ifTrue:ifFalse: and to:do are all messages.


Blocks of code are objects l.jpg
Blocks of Code are Objects

  • [:i | (Transcript show: text) cr] is an object

  • Code block can be passed as an argument to to:do:

  • Transcript is a global variable that contains an object which understands the show: message.

  • In addition to show:, the Transcript object understands the message cr, which puts a newline in the Transcript window.


References l.jpg
References

  • Smalltalk home page

    • www.smalltalk.org

  • Squeak home page

    • www.squeak.org

  • Smalltalk Industry Council home page

    • www.whysmalltalk.com


ad