Squeak

     www.squeak.org
      Marcus Denker
www.iam.unibe.ch/~denker



   University of Bern
Topics

History: The Dynabook

Squeak Overview

Projects using Squeak

Squeak: A Tool for Research
History


Alan Kay 1968: The Dynabook Vision

Xerox PARC 1972-1980: Smalltalk

Disney 1997 - 2001: Squeak
The Dynabook




A Dynamic Medium
  for Creative
     Thought
Xerox PARC: Smalltalk
Squeak
Prototyping Environment

Based on Smalltalk 80

Adds Multimedia features

  Color and 2D Graphics

  3D, Sound, Net...
Squeak: Overview




   DEMO
Viewpoints

Tweak: Scripting + UI

Croquet

Coke/Pepsi/Cola

  Rethinking Language Implementation
Squeak.org

Community squeak.org

Lots of cool projects

  Some demos later

Sadly not much coordination

  Working togeth...
Squeak 3.9
Merged back Squeakland + SmallLand +
SCG + Impara + Seaside (NetStyle)

New Features:

  Traits, Pragmas, Servi...
Projects

Sophie

Impara: Plopp3d, ....

Croquet

OLPC

Seaside
Plopp3d


DEMO
Sophie

Open-source multimedia publication
and run-time frameworks

Flash + iMovie + PDF



Completely new text + font
imp...
Sophie Project


                     DEMO




 http://sophieproject.org/
Open-Croquet




Immersible and collaborative system

http://www.opencroquet.org

version 1.0 is out
Qwaq Forums




  http://qwaq.com/
OLPC: $100 Laptop
Seaside

http://www.seaside.st/

Free seaside hosting

Support for Ajax

  scriptaculous.seasidehosting.st/

http://seacha...
www.dabbledb.com


Seaside-based

venture capital funded

www.dabbledb.com
CMSBox



         cmsbox.com
Part II: Research



Why use a kids system for Research?

  Especially Software Engineering?
Example: SCG

Software Evolution

Two directions

  Reengineering

  Language support for Evolution
Reengineering

Analyzing existing source code

  Understanding big systems

  Enabling future evolution

Software Visualiz...
Moose
Reengineering
 Environment           Example:
                        Chronia
Many Plugins




     http://moose.uni...
Moose

Implemented in Smalltalk (Cincom)

Smalltalk enables

  Rapid prototyping of complex tools

  Very fast turnaround
...
Languages for
      Evolution

Languages do not support Evolution



How to support Evolution better?
Squeak for
Prototyping Languages
 Completely open

   Reflection

   VM easy to modify

 Simple

   Simple Syntax

   Dyna...
Traits
Classes composed of Traits

  Collection of methods

  No state



Pioneered in Squeak

  Scala, Perl6, Fortress, S...
Changeboxes
Provide first class model of Change



History always available

  even at runtime



System can be run in old...
Other groups...

HPI Potsdam (Germany)

University of Savoie (France)

Ecole des Mines de Douai (France)

Cadence Design S...
Thats it...?


... for now

Questions?

Next?
Possible topics...
Reflection

Metaprogramming and Refactoring

Bytecode + Bytecode Transformation



Examples of how to u...
Squeak
Upcoming SlideShare
Loading in...5
×

Squeak

837

Published on

Presentation of Squeak, held at University of Siegen, 30.05.2007

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
837
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • Squeak

    1. 1. Squeak www.squeak.org Marcus Denker www.iam.unibe.ch/~denker University of Bern
    2. 2. Topics History: The Dynabook Squeak Overview Projects using Squeak Squeak: A Tool for Research
    3. 3. History Alan Kay 1968: The Dynabook Vision Xerox PARC 1972-1980: Smalltalk Disney 1997 - 2001: Squeak
    4. 4. The Dynabook A Dynamic Medium for Creative Thought
    5. 5. Xerox PARC: Smalltalk
    6. 6. Squeak Prototyping Environment Based on Smalltalk 80 Adds Multimedia features Color and 2D Graphics 3D, Sound, Networking... Etoys prototype for kids
    7. 7. Squeak: Overview DEMO
    8. 8. Viewpoints Tweak: Scripting + UI Croquet Coke/Pepsi/Cola Rethinking Language Implementation
    9. 9. Squeak.org Community squeak.org Lots of cool projects Some demos later Sadly not much coordination Working together is very hard!
    10. 10. Squeak 3.9 Merged back Squeakland + SmallLand + SCG + Impara + Seaside (NetStyle) New Features: Traits, Pragmas, Services, Look A ****lot**** of changes!
    11. 11. Projects Sophie Impara: Plopp3d, .... Croquet OLPC Seaside
    12. 12. Plopp3d DEMO
    13. 13. Sophie Open-source multimedia publication and run-time frameworks Flash + iMovie + PDF Completely new text + font implementation
    14. 14. Sophie Project DEMO http://sophieproject.org/
    15. 15. Open-Croquet Immersible and collaborative system http://www.opencroquet.org version 1.0 is out
    16. 16. Qwaq Forums http://qwaq.com/
    17. 17. OLPC: $100 Laptop
    18. 18. Seaside http://www.seaside.st/ Free seaside hosting Support for Ajax scriptaculous.seasidehosting.st/ http://seachart.seasidehosting.st/
    19. 19. www.dabbledb.com Seaside-based venture capital funded www.dabbledb.com
    20. 20. CMSBox cmsbox.com
    21. 21. Part II: Research Why use a kids system for Research? Especially Software Engineering?
    22. 22. Example: SCG Software Evolution Two directions Reengineering Language support for Evolution
    23. 23. Reengineering Analyzing existing source code Understanding big systems Enabling future evolution Software Visualization
    24. 24. Moose Reengineering Environment Example: Chronia Many Plugins http://moose.unibe.ch/
    25. 25. Moose Implemented in Smalltalk (Cincom) Smalltalk enables Rapid prototyping of complex tools Very fast turnaround Agile development
    26. 26. Languages for Evolution Languages do not support Evolution How to support Evolution better?
    27. 27. Squeak for Prototyping Languages Completely open Reflection VM easy to modify Simple Simple Syntax Dynamic Typing
    28. 28. Traits Classes composed of Traits Collection of methods No state Pioneered in Squeak Scala, Perl6, Fortress, Slate
    29. 29. Changeboxes Provide first class model of Change History always available even at runtime System can be run in old version
    30. 30. Other groups... HPI Potsdam (Germany) University of Savoie (France) Ecole des Mines de Douai (France) Cadence Design Systems Inc. (USA)
    31. 31. Thats it...? ... for now Questions? Next?
    32. 32. Possible topics... Reflection Metaprogramming and Refactoring Bytecode + Bytecode Transformation Examples of how to use dev tools Monticello, Browser...
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×