Jump to content

Squeak: Difference between revisions

From EDM2
mNo edit summary
No edit summary
Line 1: Line 1:
[[Image:Squeaklogo.png|right]]
[[Image:Squeaklogo.png|right]]
Squeak is a multi platform open source [[Smalltalk]] environment originally released in 1996 by [[Apple]]. There exists a native, high performance Squeak port, written specifically for OS/2. It uses [[DIVE]], the game oriented display API from IBM, that uses hardware acceleration to achieve fast display updates. The result is a quite fast Squeak even on a 486 machine.
Squeak is a multi platform open source [[Smalltalk]] environment originally released in 1996 by [[Apple]]. There exists three different ports for OS/2:
* Original Squeak port by [[Boris G. Chr. Shingarov]]
: This is basically [[UNIX]] Squeak quickly ported to OS/2, as a text mode application it works correctly on OS/2, but for the graphics environment you will need an [[X11]] server.
* A [[DIVE]] based port by [[Juan Manuel Vuletich]]
: This port solves the problem of the display environment by using [[DIVE]], the game oriented display API from IBM, quite innovative and if you have a hardware accelerated DIVE on your machine the port is actually faster than the original Mac and [[MS Windows]] versions.
* '''Cheese''' - A native [[PM]] port by [[Boris G. Chr. Shingarov]]
: A version of Squeak that uses [[Presentation Manager]] windows and widgets instead of the BitBlt virtual environment and resembles a traditional Smalltalk environment much more than Squeak.


It includes a convenient mapping of several keys in the VM. Ctrl-Break and Esc are the interrupt keys and, Ctrl-Ins, Shft-Ins and Shft-Del manage the clipboard (emulating Alt-c, Alt-v and Alt-x). Besides all Squeak color depth are supported from 1 to 32 bit. If you select a Squeak color mode with more colors that your OS/2 desktop, color dithering will occur, giving a very good illusion of having more colors than you really have.
Of the three the DIVE based port and Cheese are by far the most interesting, the dive based port imitates the original BitBlt Apple environment exactly by using DIVE which is quite an innovative approach that works well, it even interpolates the available colours to allow you to display a larger colour pallette than you are actually using, useful if your version of DIVE shows a noticeable slowdown with larger colour palettes. Early versions lacked support for sound and networking but that had been remedied by version 3, however even the last version 3.5 still does not have support for MIDI, serial port or joysticks, but this is a non issue in 99.9% of cases.  


This version has support for sound and TCP/IP networking. It doesn't still have support for MIDI, serial port or joystick.  
Cheese is even less complete than the DIVE port but presents a much nicer programming environment in many cases as you are no longer bound by the limitations of the BitBlt workbench and can move windows around any way you like. Interestingly, like [[BISS-AWT]] influenced [[Swing]] on Java, Cheese actually had an influence on the [[SWT]] Java widgets toolkit as Mr Shingarov later went to work on SWT and cites his work on Cheese as an influence on how SWT was implemented.


System requirements
====Add-ons, classes (libraries) and related software====
* [http://bertfreudenberg.github.io/SqueakJS/ SqueakJS] - An interpreter that allows you to run Squeak Smalltalk inside a browser - Open source - Current.
 
==Versions==
[[Image:SqueakonOS2.jpg|thumb|250px|'''Squeak DIVE 3.5 for OS/2''']]
* '''Latest DIVE Version:''' 3.5 (2003/06/05) [http://hobbes.nmsu.edu/h-search.php?key=squeakos2vm.zip Hobbes]
* Latest Cheese version: Cheese5
* Last known UNIX port: 1.3
* Last known DOS version: 2.0 (Squeak 2.1)


* Long file name support (install Squeak on a HPFS or network drive)
====Prerequisites====
;DIVE Squeak port
* Long filename support (install Squeak on a HPFS or network drive)
* DIVE video dlls (Installed by default by OS/2 Warp 4 Multimedia Support, but can be added to any OS/2)
* DIVE video dlls (Installed by default by OS/2 Warp 4 Multimedia Support, but can be added to any OS/2)
* DART audio dlls (Installed when installing an audio card, but can be added even without one)
* DART audio dlls (Installed when installing an audio card, but can be added even without one)
* Video mode with at least 256 colors, and support for DIVE (any driver should work)
* Video mode with at least 256 colors, and support for DIVE (any driver should work)
====Add-ons, classes (libraries) and related software====
 
* [http://bertfreudenberg.github.io/SqueakJS/ SqueakJS] - An interpreter that allows you to run Squeak Smalltalk inside a browser - Open source - Current.
;UNIX Squeak port
==Version==
* Any [[X11]] server
[[Image:SqueakonOS2.jpg|thumb|250px|'''Squeak for OS/2''']]
 
* '''Latest Version:''' 3.5 (2003/06/05) [http://hobbes.nmsu.edu/h-search.php?key=squeakos2vm.zip Hobbes]
* Last known DOS version: 2.0 (Squeak 2.1)
==Links==
==Links==
* OS/2 Port web site [http://www.jvuletich.org/Squeak/SqueakForOS2/SqueakForOS2Eng.html]
* OS/2 Port web site [http://www.jvuletich.org/Squeak/SqueakForOS2/SqueakForOS2Eng.html]
Line 27: Line 41:
* [http://pharo.org Pharo] - A fork of Squeak, no OS/2 or eCS version yet.
* [http://pharo.org Pharo] - A fork of Squeak, no OS/2 or eCS version yet.
* [http://www.cuis-smalltalk.org/ CUIS] - Another fork of Squeak, with emphasis on smaller more coherent system, no OS/2 or eCS version yet.
* [http://www.cuis-smalltalk.org/ CUIS] - Another fork of Squeak, with emphasis on smaller more coherent system, no OS/2 or eCS version yet.
==Publications==
[[Image:Sqk00046.gif|thumb|250px|'''Cheese for OS/2'''<br>Ca. 1998]]
* [http://www.squeakbyexample.org/ Squeak by Example] - Third edition - 2010 - Available as a downloadable [[PDF]] format file or as a softcover book, in French and Korean in addition to English. Written by Andrew P. Black, Stéphane Ducasse, Oscar Nierstrasz, Damien Pollet, Damien Cassou and Marcus Denker.
: Source code from the book can be downloaded [http://github.com/SquareBracketAssociates/ from here].
* Stephane Ducasse: Squeak: Learn Programming with Robots - Paperback – 2006 - ISBN 1590594916 - ISBN-13 978-1590594919 - In Print.
* Gene Korienek, Tom Wrensch and Doug Dechow: Squeak: A Quick Trip to ObjectLand - Paperback – 2001 - ISBN-10: 0201731142 - ISBN-13: 978-0201731149 - In Print.
* Mark J. Guzdial and Kimberly M. Rose: Squeak: Open Personal Computing and Multimedia - Paperback – 2001 - ISBN-10: 0130280917 - ISBN-13: 978-0130280916 - In print.
* Mark J. Guzdial: Squeak: Object-Oriented Design with Multimedia Applications Paperback – December 30, 2000 - Out of print
====Related Articles====
* [http://www.angelfire.com/tx4/cus/notes/smalltalk.html Terse Squeak] - All the Squeak keywords and options in one terse file.


==License==
==License==
* Open Source - [[MIT License]] and [[Apache Software License v2 ]]
* Open Source - [[MIT License]] and [[Apache Software License v2 ]]


==Author==
==Authors==
<div style="column-count:2;-moz-column-count:2;-webkit-column-count:2">
* Apple Corp (Original author)
* Apple Corp (Original author)
* Disney (Current maintainer)
* Disney (Current maintainer)
Line 39: Line 66:
* John Maloney (Original author)
* John Maloney (Original author)
* Scott Wallace  (Original author)
* Scott Wallace  (Original author)
* [[Juan Manuel Vuletich]] (OS/2 port).
* [[Juan Manuel Vuletich]] (OS/2 DIVE port).
 
* [[Boris G. Chr. Shingarov]] (OS/2 port and Cheese)
==Publications==
</div>
* [http://www.squeakbyexample.org/ Squeak by Example] - Third edition - 2010 - Available as a downloadable [[PDF]] format file or as a softcover book, in French and Korean in addition to English. Written by Andrew P. Black, Stéphane Ducasse, Oscar Nierstrasz, Damien Pollet, Damien Cassou and Marcus Denker.
: Source code from the book can be downloaded [http://github.com/SquareBracketAssociates/ from here].
* Stephane Ducasse: Squeak: Learn Programming with Robots - Paperback – 2006 - ISBN-10: 1590594916 - ISBN-13: 978-1590594919 - In Print.
* Gene Korienek, Tom Wrensch and Doug Dechow: Squeak: A Quick Trip to ObjectLand - Paperback – 2001 - ISBN-10: 0201731142 - ISBN-13: 978-0201731149 - In Print.
* Mark J. Guzdial and Kimberly M. Rose: Squeak: Open Personal Computing and Multimedia - Paperback – 2001 - ISBN-10: 0130280917 - ISBN-13: 978-0130280916 - In print.
* Mark J. Guzdial: Squeak: Object-Oriented Design with Multimedia Applications Paperback – December 30, 2000 - Out of print
 
====Related Articles====
* [http://www.angelfire.com/tx4/cus/notes/smalltalk.html Terse Squeak] - All the Squeak keywords and options in one terse file.


[[Category:Tools]][[Category:Smalltalk]][[Category:DOS Tools]][[Category:MS Windows Tools]][[Category:Linux Tools]][[Category:MAC OSX Tools]][[Category:RiscOS Tools]][[Category:Open Source Software]]
[[Category:Tools]][[Category:Smalltalk]][[Category:DOS Tools]][[Category:MS Windows Tools]][[Category:Linux Tools]][[Category:MAC OSX Tools]][[Category:RiscOS Tools]][[Category:Open Source Software]]

Revision as of 19:37, 19 March 2016

Squeak is a multi platform open source Smalltalk environment originally released in 1996 by Apple. There exists three different ports for OS/2:

This is basically UNIX Squeak quickly ported to OS/2, as a text mode application it works correctly on OS/2, but for the graphics environment you will need an X11 server.
This port solves the problem of the display environment by using DIVE, the game oriented display API from IBM, quite innovative and if you have a hardware accelerated DIVE on your machine the port is actually faster than the original Mac and MS Windows versions.
A version of Squeak that uses Presentation Manager windows and widgets instead of the BitBlt virtual environment and resembles a traditional Smalltalk environment much more than Squeak.

Of the three the DIVE based port and Cheese are by far the most interesting, the dive based port imitates the original BitBlt Apple environment exactly by using DIVE which is quite an innovative approach that works well, it even interpolates the available colours to allow you to display a larger colour pallette than you are actually using, useful if your version of DIVE shows a noticeable slowdown with larger colour palettes. Early versions lacked support for sound and networking but that had been remedied by version 3, however even the last version 3.5 still does not have support for MIDI, serial port or joysticks, but this is a non issue in 99.9% of cases.

Cheese is even less complete than the DIVE port but presents a much nicer programming environment in many cases as you are no longer bound by the limitations of the BitBlt workbench and can move windows around any way you like. Interestingly, like BISS-AWT influenced Swing on Java, Cheese actually had an influence on the SWT Java widgets toolkit as Mr Shingarov later went to work on SWT and cites his work on Cheese as an influence on how SWT was implemented.

Add-ons, classes (libraries) and related software

  • SqueakJS - An interpreter that allows you to run Squeak Smalltalk inside a browser - Open source - Current.

Versions

Squeak DIVE 3.5 for OS/2
  • Latest DIVE Version: 3.5 (2003/06/05) Hobbes
  • Latest Cheese version: Cheese5
  • Last known UNIX port: 1.3
  • Last known DOS version: 2.0 (Squeak 2.1)

Prerequisites

DIVE Squeak port
  • Long filename support (install Squeak on a HPFS or network drive)
  • DIVE video dlls (Installed by default by OS/2 Warp 4 Multimedia Support, but can be added to any OS/2)
  • DART audio dlls (Installed when installing an audio card, but can be added even without one)
  • Video mode with at least 256 colors, and support for DIVE (any driver should work)
UNIX Squeak port

Links

Publications

Cheese for OS/2
Ca. 1998
  • Squeak by Example - Third edition - 2010 - Available as a downloadable PDF format file or as a softcover book, in French and Korean in addition to English. Written by Andrew P. Black, Stéphane Ducasse, Oscar Nierstrasz, Damien Pollet, Damien Cassou and Marcus Denker.
Source code from the book can be downloaded from here.
  • Stephane Ducasse: Squeak: Learn Programming with Robots - Paperback – 2006 - ISBN 1590594916 - ISBN-13 978-1590594919 - In Print.
  • Gene Korienek, Tom Wrensch and Doug Dechow: Squeak: A Quick Trip to ObjectLand - Paperback – 2001 - ISBN-10: 0201731142 - ISBN-13: 978-0201731149 - In Print.
  • Mark J. Guzdial and Kimberly M. Rose: Squeak: Open Personal Computing and Multimedia - Paperback – 2001 - ISBN-10: 0130280917 - ISBN-13: 978-0130280916 - In print.
  • Mark J. Guzdial: Squeak: Object-Oriented Design with Multimedia Applications Paperback – December 30, 2000 - Out of print

Related Articles

  • Terse Squeak - All the Squeak keywords and options in one terse file.

License

Authors

  • Apple Corp (Original author)
  • Disney (Current maintainer)
  • Alan Kay (Original author)
  • Dan Ingalls (Original author)
  • Ted Kaehler (Original author)
  • John Maloney (Original author)
  • Scott Wallace (Original author)
  • Juan Manuel Vuletich (OS/2 DIVE port).
  • Boris G. Chr. Shingarov (OS/2 port and Cheese)