Squeak is a free, Open Source version of the Smalltalk Language.
See www.squeak.org
Although Squeak was led by Alan Kay, it isn't the definitive Smalltalk Language. The goal of Squeak is not to recreate Smalltalk-80, but to start with Smalltalk-80 and then move to the next level. Squeak supports the Model View Controller (MVC) model, but the preferred UI framework is called "Morphic" (Morphic Interface), and is based upon the framework of the same name developed for the Self Language.
(It's important to note that Squeak's use of Morphic hasn't the slightest resemblance to Self's. As far as look and feel go, they might as well be radioactive napalm and life-giving water. Given Squeak's misuse of direct manipulation and the sheer ugliness of its default look, UI design can't possibly have been a consideration. In fact, the radically different UIs in Self and Squeak prove just how little importance using a particular framework makes to the end user. -- Richard Kulisz)
Other Squeak sites:
wiki.squeak.org -- Squeak wiki
squeak.cs.uiuc.edu -- mirror of www.squeak.org
www.squeakfoundation.org -- support for a variety of projects
www.squeak.org -- Stable Squeak
www.squeakland.org -- educational projects
macos.tuwien.ac.at:9009 -- mailing list archive
seaside.st -- the web application framework Seaside Framework runs on Squeak
pbl.cc.gatech.edu -- Swiki, a Wiki Clone written in Squeak
www.create.ucsb.edu -- music/sound
216.119.126.25 -- yet another Squeak wiki
squeak.joyful.com -- one-page roadmap to squeak essentials
people.squeakfoundation.org -- Squeak People, an Advo Gato-like community website
Note that several of these sites are running on Squeak.
The Squeak wiki, the mailing list, and Squeak People (URLs above) are all good places to go to see what's been happening in the Squeak community lately. The main squeak.org site isn't updated very often (which is probably silly :).
Interesting testimony about choosing Squeak (over Java Language): developers.slashdot.org
Dan Ingalls, Ted Kaehler, John Maloney and others at Apple research (now at Disney Imagineering) have implemented a Smalltalk virtual machine in an easily transliterated subset of Smalltalk and have converted this into executables for Macintosh computers. Subsequently there have many ports to all sorts of machines and Operating Systems, including Microsoft Windows and most flavours of Unix (notably Linux).
Others around the net have repeated the process for a wide variety of machines. Stephen Pope hosts a mailing list, archive and mirror for sites where these highly compatible implementations can be download.
Many of Squeak's original implementors followed Alan Kay to Disney Imagineering where they continued to coordinate Squeak's development. Now, according to a link on the Alan Kay page, he and others have left Disney. Does anyone know where they ended up?
The license is at: www.squeak.org . It looks like an open-source license, in that you are free to use and modify it in commercial and non-commercial settings, but if you release modifications to the virtual machine or the base classes, you must make them available in source form over the internet.
Plain English Examples of License Terms
Our license agreement contains conditions intended to keep Squeak open and available to the user community, while allowing users to do useful things with Squeak. You will see the license once you begin installing Squeak. These following examples are provided as illustrations and are not legally binding. See the license for the real terms. To the extent that the examples and the license conflict, the license will govern.
You are allowed to change Squeak, write extensions to Squeak, build an application in Squeak, and include some or all of Squeak with your products. You may distribute all of these things along with Squeak, or portions of Squeak, for free or for money. However, you must distribute these things under a license that protects Apple in the way described in our license to you.
If you modify any of the methods of class objects (or their relationships) that come with Squeak (as opposed to building on top of what we provide), you must post the modifications on a web site or otherwise make them available for free to others, just as we have done with Squeak. Our license to you explains how you must do this.
The same is true if you port Squeak to another machine or operating system - you must post your port on a web site or otherwise make it available for free to others under the terms described in our license to you.
Now that I'm finally getting used to Smalltalk from working in Pocket Smalltalk, I decided to come back and give Squeak a try. It is still ugly, but I'm more forgiving now (and I'm trying to figure out how to for the Xserver to run in an 8bit grayscale mode). Now, I think, this thing could almost be an OS by itself. Which of course was the original Dyna Book idea. So, who wants to help me port squeak to run on linux's frame buffer console, and make it so that it can use raw partitions for data storage?
raw partitions for data storage??? Maybe a filesystem optimized for small files like ReiserFS, on Linux, would be more appropriate, so you do not have to implement (reinvent) your date storage mechanism.
I just downloaded it. It is very cool. I like the fact that it does MIDI. I used to write a lot of fun little C++ programs to read and write MIDI to my keyboard.., automatic composers, harmonizers, software delays that with periods of about an hour which frighten the dog and houseguests. C++ never seemed liquid enough for some of what I wanted to do.
Very cool. I haven't sat this close to Smalltalk and known what it is before. It feels like an operating system. I got the book Smalltalk The Language And Its Implementation to get started. I like the fact that Squeak is starting at Smalltalk-80 but there are plans to move on to new things. It feels like I'm packing for a trip I've been looking forward to. -- Michael Feathers
Exactly! I got butterflies. And that was before I only found out yesterday that Smalltalk actually did start out (around the same year I was born, for goodness sake) as the OS for Xerox PARC's very very early 'Alto' personal computer. Amazing. -- Richard Emerson
Very cool. The paper at ftp://st.cs.uiuc.edu/Smalltalk/Squeak/docs/OOPSLA.Squeak.html is worth a read, even if you never use the language: Wiki people might like their approach to development. -- Martin Pool
Get free Web space for your Squeaklets at www.squeakspace.com -- Fridemar Pache
Has anyone thought about the effects of Squeak's "different" looking GUI has on its chances of becoming more popular? It's a really cool language and environment, but it must be the ugliest GUI I have seen, ever. How many people download Squeak, start it up, look at the graphics, and then shut it down directly? I enjoyed a few hours playing with it, but if I hadn't known Smalltalk before I surely wouldn't have given it a chance. Sadly, first impressions do matter. -- Anders Bengtsson
In version 2.8, things look a bit better if you switch it to the Morphic world. In 3.0, things look a look a lot better. Now that Morphic is default, I finally find information on some mods that make MVC downright good looking. Sigh. Anyway, Morphic could be much better. Thankfully, there is a lot of support for themes, but that still doesn't help with the first impression, it just makes it easier on the eyes of us who decide to stick it out. See wiki.squeak.org .
There seems to be a project called "cheese" that implements Squeak's GUI with native widgets. Or, at least, I saw a screenshot of it on the screenshots page. -- Anonymous Donor
I like the spartan quality of the Squeak 3.0 user interface. And all the source code is there, so if you want to make it fancy, it shouldn't be too difficult. But it does leave one wondering if it would be possible to develop a "marketable" piece of software with it without doing a lot of work on the UI. -- Kris Johnson
Answer Me: Would it be unfair to say that Squeak is not up to application development? Has anyone out there actually participated or even heard of an application being developed in Squeak? Does anyone use Squeak Smalltalk For Real Work?
"Ohshima: I come from Japan. A student of technology. I wrote Squeak for Sharp PDA?? with 320x240 color display. This has a scheduler and other base functions. This has a serial port and infrared port. I can get PPP?? by cellular phone or telephone line. This can record sound. The other important feature is a card with a camera. (Takes picture of audience�applause, cheers). The price range is $700-$1000. (Can you shave with this?) The person at the registration desk said "Wow, you are James Bond!" This has 70% of Japanese market..." jeffsutherland.org
[Would this count? Are the capabilities of this PDA Squeak-enabled? I know the Japanese student ported Squeak to the PDA, but I don't know if the applications he talked about were done with Squeak. The transcript isn't very clear.]
Here is an example of a standalone application wiki.squeak.org
That's a pretty weak example.
How so? I think the idea was to demonstrate that you can use Squeak Smalltalk to produce standalone applications. I grabbed the tarball for my system, and, sure enough, it worked.
It's not exactly what I would call an 'application'. The real question is whether the average organization could make money developing software with it.
I do not see why not. I cannot cite any 'applications' out there that are making money based on Squeak, but I gotta wonder, and maybe you can enlighten me, why not? As far as I can tell, it seems to have everything any other general purpose programming language has, and then some.
Your real question is "Can I make more money developing software with Squeak than with whatever tools I'm using now.". The answer is probably "no". But Disney has supposedly been using it for real-world applications. Check the link on the Alan Kay page. -- Kris Johnson
Also note that several of the Web sites listed at the top of the page are running on Squeak-based Web servers.
There is actually a page on the main Squeak Swiki called "Production Squeak" which lists various applications which have been written in Squeak: wiki.squeak.org .
In short, there are not a lot of people developing standalone applications in Squeak right now (more people use it for research, teaching, and learning), but there are some people doing this. The number of people developing standalone apps should increase further as Squeak proceeds in its modularization/partitioning effort, and new applications appear on the Squeak Map registry. --Doug Way
Open Croquet a distributed Virtual World somewhat like Second Life was developed using squeak, it is a very significant project. www.opencroquet.org explains some of their reasons for choosing squeak. --Andrew Mc Meikan
For two introductory books (as drafts) see/review coweb.cc.gatech.edu .
Wiki denizens might be most interested in the chapter "Embracing Change with Squeak: Extreme Programming (XP)": coweb.cc.gatech.edu:8888 .
(9-Feb-2003) This page was last edited nine months ago. What's the latest on the future of Squeak? The Squeak.org page hasn't updated its "where is squeak headed" section for years. Google doesn't reveal a lot of current activity. Is Squeak slowly dying? Is Squeak Dead?
(19-Feb-2004) Squeak Is Not Dead, there is a lot of activity. Look for example here: people.squeakfoundation.org .
Someone please Squeak up.
Dead? Hardly! The Squeak community has been furiously active lately, but virtually all of the effort has gone into improving the contents, not the box. The main Squeak site is certainly long overdue for updating, though with Squeak advancing so quickly the website will seldom be truly current. The various Squeak mailing lists are the best place to look for info on what's hap'nin' now. -- gf
Squeak will soon be on millions of laptops, since eToys will be built into One Laptop Per Child's first release.
In the moment I saw the Squeak webpages and the interface I really squeaked out ("Argh, my eyes!" most of the time). I mean what is this for instance: www.squeakland.org ? They should either get a good designer to brush up these designs - or just switch to a google-like approach of simple design. Well I know that design is not everything, but people who see those pages will just run away. -- Thomas Veil
Interestingly enough, when going to that page (which appears to have been designed to appeal to children), I had to browse around for quite a while before encountering any mention of "Smalltalk" (and that's on the "squeak" site, not the "squeakland" site. Squeak is being billed as a "media authoring tool" (a claim I won't dispute), rather than a Programming Language. (One could easily argue that it is both). Given that most folks here on Wards Wiki treat Squeak as Yet Another Smalltalk Implementation as opposed to a content creation environment (look at the title and discussion found on this page, for instance), the disconnect is glaring.
I think generally, the hyper-colourful Morphic looks beautiful. I'd love to work there. But why the hell can't they accept that
a) 99.9% of the population don't have a three-button mouse and don't want to learn how to map Red / Yellow and Blue onto combinations of keys and mouse buttons. (Nor, are they likely to be impressed by the helpful suggestion of the intro tutorial to buy a new, 3-button mouse.)
Basically Late Binding is a wonderful thing ... when the computer does it. But the Squeak interface wants the benefit of late-binding your hardware to an abstract interface model, where the user has to remember the transformation between the two.
b) there are symbols which have become conventions for "open", "maximize", "minimize" windows. Windows uses them, Linux uses them, I'm pretty sure Mac has something not too unintuitively disimilar. My suspicion is that Squeak loses 50% of it's audience the first time people actually try to maximize and then minimize the windows and find they don't work "normally". Of course, we can learn to get over this, but it screams that this is going to be complicated and difficult to use - if even the windows are difficult, what about the rest of it?
-- Phil Jones
Does the name "squeak" derive from the noise made by a certain animal, an animated rendition of which turned Alan Kay's previous employer into a wealthy and powerful media company?
No, it was called "Squeak" before the team joined Disney.
Hmmm.... Question: 1 Comprehension: 0. Correction to the above -- YES, it is named for the sound that a mouse makes, of which Mickey is a rendition of. :-) --Samuel Falvo
See also: Learning Squeak, Squeak Alice, Squeak Smalltalk For Real Work, Examples Of Escaping Complexity, Squeak Ee
Category Programming Language Category Language Implementation Category Smalltalk Category Software Tool Category Hypercard
See original on c2.com