52 in Java, 38 in Ruby, 76 in Câ¯. ⢠Message sending ... âSmalltalk by Example: the Developer's Guideâ by Alex Sharp. (free). Squeak. ⢠âSqueak by Exampleâ by ...
Smalltalk The Language, a Free IDE and a Web Framework
Damien Cassou European Smalltalk User Group
Journée Méditerranéenne du Logiciel Libre 2007
Smalltalk
Language
The Language • Dynamically typed • Everything is an object: even integers and classes • Everything is consistent: no exception • Highly portable: uses a Virtual Machine • Garbage collector • Closures (blocks) • Smalltalk is a living system • classes can be modified and their instances are dynamically updated • programs are neither started nor stopped: they just run
Damien Cassou (ESUG)
Smalltalk
JM2L 2007
2 / 12
Smalltalk
Syntax
Syntax • 15 minutes to learn it! • Principle of least astonishment • Very limited number of keywords • self, super, true, false, nil, thisContext • 52 in Java, 38 in Ruby, 76 in C] • Message sending
adam := Person new. eve := Person new. adam gender. adam age = eve age. adam playWith: eve. adam say: ’Hello’ to: eve.
Damien Cassou (ESUG)
Smalltalk
JM2L 2007
3 / 12
Smalltalk
Syntax
Syntax
• No constructors • Only methods which return new instances Person class>>name: aString |person| person := self new. person name: aString. ^ person eve := Person name: ’Eve’.
Damien Cassou (ESUG)
Smalltalk
JM2L 2007
4 / 12
Smalltalk
Syntax
Syntax • No control flow instructions (if, while, . . . )
(eve receivedMail) ifTrue: [eve regrets] trees select: [:tree | tree isAppleTree] [tree isMissingAnApple] whileFalse. • Class creation
• Open-source free Smalltalk implementation • Integrated Development Environment • Modification of Squeak inside Squeak itself • No source file: image-based development • Virtual Machine implemented in Smalltalk and translated to C • Last stable version: December 2006 (3.9)
Damien Cassou (ESUG)
Smalltalk
JM2L 2007
6 / 12
Squeak
Uses
EToys
Damien Cassou (ESUG)
Smalltalk
JM2L 2007
7 / 12
Squeak
Uses
Croquet
Damien Cassou (ESUG)
Smalltalk
JM2L 2007
8 / 12
Squeak
Uses
OLPC
Damien Cassou (ESUG)
Smalltalk
JM2L 2007
9 / 12
Squeak
Uses
Seaside
Damien Cassou (ESUG)
Smalltalk
JM2L 2007
10 / 12
Conclusion
Books Smalltalk • “Smalltalk with Style” by Edward Klimas, Suzanne Skublics and
David A. Thomas (free) • “Smalltalk by Example: the Developer’s Guide” by Alex Sharp
(free)
Squeak • “Squeak by Example” by a lot of authors (September 2007 - free) • “Squeak” by Xavier Briffault and Stéphane Ducasse (french) • “Powerful Ideas in the Classroom” by BJ Allen-Conn and Kim
Rose (english, french)
Damien Cassou (ESUG)
Smalltalk
JM2L 2007
11 / 12
Conclusion
Conclusion Conclusion • Smalltalk is a very simple object-oriented language • Squeak is a portable full-featured IDE for Smalltalk • Seaside is one of the most powerful web framework
âSmalltalk with Styleâ by Edward Klimas, Suzanne Skublics and. David A. Thomas (free). ⢠âSmalltalk by Example: the Developer's Guideâ by Alex Sharp. (free).
The ball bounces off the sides, bricks, and paddle in a conventional fashion. ...... characters), and graphic elements (such as rectangular areas, drawing pens, ...... to a Smalltalk system, these chapters can be used as a hands-on tutorial about.
it continues to provide the knowledge you need up to a proficiency level sufficient to pass .... Book contents as a PDF file The entire book is available as a fully searchable ...... Another resource you may want to consult is your hardware's manufac
Nov 6, 2005 - And many others (please contact stef to update the list) Main Editor: S. Ducasse ..... Hints: it may be appropriate to define another method square that draws a square ... To check if your hierarchy makes sense here is a guideline: It s
Nov 6, 2005 - 2.6 HotelReservation . ..... MDSI/4916 Ch12 FINAL.pdf. .... basic system: the complete compiler, parser classes, GUI framework, development environment, debugger, ..... a category (a folder containing the classes of your project). ....
Not yet versioned: It is still a work in progress. ...... Just download it and put it in your /etc/init.d/ directory after updating it to fit you needs. On ...... oggenc and lame allow us to specify some extra attributs for our songs, like its title
Jul 6, 2010 - operating system) but, unless the platform is already available, is the e ort worth the time spent with respect to developing under Android ?
How to create music with GNU/Linux. Warning. WORK IN PROGRESS. Permission is granted to copy, distribute and/or modify this document under the terms of ...
Editors, file managers, compilers, debuggers, and print utilities are all included ..... classification, we are able to associate characteristics common to all members of a ...... Sometimes these buttons are referred to as the left, middle, and right
recursion using this program, and, in this case, Smalltalk is no excep- tion. The Tower of ... become our recursive solution to the problem. Now we're ready to ...
permission of the publisher (Springer-Verlag New York, Inc. 175 Fifth Avenue, New York, NY 10010, .... course, just one of the tools in the Smalltalk/V environment. This .... We try to differentiate between elements of the Smalltalk language.
Copying or duplicating this manual or any part thereof is a violation of the law. .... of Smalltalk thought suggests that the best introduction to object-oriented programming ... Smalltalk embodies these ideas in a framework for human/computer ... pr
11 avr. 2014 - la commission européenne l'arrachage de tous les oliviers à proximité des ..... L'Agence Régionale de Santé (ARS) peut imposer le secteur de la ..... dans la plaine, des poubelles partout dans le village, que les médicaments,.
lifecycle could harm the environment. Do not dispose ... system to the Internet, TCP/IP protocol must be implemented. ... developer in time, cost, and technology.
text is compiled into object code and linked into the system, as the sys- .... As the group manager, I took responsibility for documenting the system. It is not ..... Apple Lisa, experimental software (photo courtesy of Apple Computer Inc.); middle:
A Taste of Smalltalk. ⢠Two examples: â 'hello world'. â A Tomagoshi. ⢠To give you an idea of: â the syntax. â the elementary objects and classes.
May 24, 1985 - Processing a Class Definition. 39. This chapter introduces the syntax used for defining classes. An ex- ample class definition is presented.
described. This book will help you write Smalltalk code that is easy to read, easy to ..... storing whether or not the face is happy, the variable expression, from the example ...... not matter which style you choose, as long as you use it consistent