3. In a nutshell
Pharo = language + IDE + update mechanism
Pure object-oriented programming language
Dynamically typed and trait-based
Open and ïŹexible environment
Platform for Seaside and Aida/Web web frameworks
4. Pharo?
A progressive, open-source Smalltalk platform
for professional use.
Stable
Bugs ïŹxed fast
But innovative
40. 1 to: 100 do:
[ :i | Transcript show: i ; space]
40
41. 1 to: 100 do:
[ :i | Transcript show: i ; space]
41
42. 1 to: 100 by: 3 do:
[ :i | Transcript show: i ; space]
42
43. 1 to: 100 by: 3 do:
[ :i | Transcript show: i ; space]
43
44. A typical method in Point
Method name Argument Comment
<= aPoint
! "Answer whether the receiver is neither
! below nor to the right of aPoint."
! ^ x <= aPoint x and: [y <= aPoint y]
Return Binary message Block
Instance variable Keyword message
(2@3) <= (5@6) true
45. Creating classes
Send a message to a class (!)
Number subclass: #Complex
! instanceVariableNames: 'real imaginary'
! ...
! category: 'ComplexNumbers'
46. Past....
Started with Squeak Smallltalk
+ Major Cleanups (MVC, eToys)
+ New UI Look / TrueType
+ Tools
+ Block Closures
+ Lots of bugïŹxes and small improvements
+ Preferences clean up
+ MIT license clean
52. What we dream about
A ïŹexible infrastructure to be able to
reinvent itself
Integration Server....
Better tools
next generation refactoring So that people can
Better infrastructure invent their future
New compilers
First class packages
Minimal core
53. Everybody can help
Reporting bugs
ConïŹrming bugs
Writing tests
Writing examples
Writing comments
Simple contributing ïŹxes
Deep discussion...
54. Process
FIX/
ENHANCEMENT Discussed on
In PharoInbox or Discussed
Changesets on Mailing- BUG
list
Described
Described
BUG Tracker
Discussed on
Other
version
Integrated Rejected
55. Pharo Sprints
May 2008 Bern
July 2009 Bern
October 2009 Lille
November 2009 Buenos Aires
more in the future...
57. Thanks Hans Beck
Matthew Fulmer
Hilaire Fernandes
Julian Fitzell David J Pennell
Alexandre Bergel
Tudor Girba Joseph Pelrine
Cedric Beler
Sean Glazier Alain Plantec
Torsten Bergmann
Norbert Hartl Damien Pollet
Matthias Berth
Dale Henrichs Lukas Renggli
Ralph Boland
Reinout Heeck Jorge Ressia
Noury Bouraqadi
Eric Hochmeister Mike Roberts
Brian Brown
Keith Hodges Robert Rothwell
Gwenael Casaccio
Henrik Sperre Johansen David Rotlisberger
Damien Cassou
Pavel Krivanek Michael Rueger
Nicolas Cellier
Adrian Kuhn Bill Schwab
Gary Chambers
Adrian Lienhard Niko Schwarz
Miguel Coba
Andreas Leidig Igor Stasenko
Gabriel Cotelli
Mariano Martinez Peck Francois Stephany
Carlos Crosetti
Dave Mason Serge Stinckwich
Cyrille Delaunay
John McIntosh Mathieu Suen
Simon Denier
Johnaton Meichtry Lawrence Trutter
Marcus Denker
Eliot Miranda Andrew Tween
Ramiro Diaz Trepat
Hernan Morales Durand martin von loewis
Stephane Ducasse
Philipp Marshall Juan Vuletich
Morales Durand Hernan
Jannick Menanteau Steven Wirts
Stephan Eggermont
Yann Monclair Hernan Wilkinson
Luc Fabresse
Oscar Nierstrasz
58. Join Us!
Creating good energy, software quality,
learning and having fun
http://pharo-project.org