Pharo 2.0: An Exciting Milestone

download Pharo 2.0: An Exciting Milestone

of 46

  • date post

  • Category


  • view

  • download


Embed Size (px)


Talk held by Stephane Duc

Transcript of Pharo 2.0: An Exciting Milestone

  • 1.Pharo 2.0: an excitingmilestoneS. Ducasse and M. Denker

2. Thanks SCG, T. Girba and you 3. Sensus HighOctane 4. It feels like... 5. PharoPure object languageGreat community of active doersPowerfulElegant and fun to programLiving system under your ngers 6. VM running on MacOSX, linux, WindowsCompiler, Core classes (stream, collections, unicode)IDE (editor, inspector, debugger, code versioning,...)UI frameworks (widgets, theme)FFIGraphics (soon opengl)Hyper fast object serializerNetwork, HTTP 7. Web frameworks: seaside, iliad, HTTP2XML, HTML scraping, Zodiac (HTTPS)Graphics frameworks: Roassal, Mondrian, EyeSeeTool builder: Glamour, MetaTools: MooseDatabase: DBXTalk, Mongo, Riak, CouchDBProxy, LoggingUnits (Aconcagua, Units)Parser: Petit Parser, SmaCCMathematical ... 8. A powerful engine to invent our future 9. Our goal... 10. Create an ecosystemwhere business/innovation can bloom 11. We want that **you** can make money withPharo. We want to be able to inventsolutions to existing problems.We want a powerful innovative dynamiclanguage where we can build our future. 12. Some Pharos, SmalltalkHub,,,Pier, DrGeo, VBridge,, objectFusion,T3 Easy from,,,Airowing, synectique, miriamTech, 2denker... 13. We want more successstories! 14. Pharo 2.0 -Apr 2013(593 updates)A massive amount of improvements 15. Since may 2008Pharo 2.0 - Apr 2013 (593 updates)Pharo 1.4 - Apr 2012 (860 updates)Pharo 1.3 (700 updates)Pharo 1.2 - mar 2011 (500 updates)Pharo 1.1 - jul 2010 (410 updates)Pharo 1.0 - oct 2009 (470 updates) 16. 2.0: UI Spec: a new way to build UI (chapter under way) Widget enhancements. Revamp progress bar Layout improvements/cleanups. Keybindings New icons (famfam). "Growl" style notications. Rectangle intersection improvements. 17. 2.0: Developer tools Nautilus Browser: groups, hierarchy, icon navigation Critics Browser Interactive navigation (cmd+click on class/selector) Spotlight (shift+enter) Diff tools enhancements Unify/clean Smartcharacters and completion Shout themes Andreass Proler 18. 2.0: CompilerRB ASTError Nodethe foundation for the AST interpreter in 3.0 19. NetworkingNew version of ZincZodiac SSL 20. 2.0: SystemSystemAnnouncer (rst class events no symbol)RPackage (just plain real object)Manifest (Package meta-data)Extensible Command-lineNativeBoostRing Meta Model 21. 2.0: System (2) Fuel instead of smart ref streams FreeType fonts better handling (resources) Session-aware code Metacello FileSystem DateAndTime refactoring (UTC internally) 22. 2.0: VMLatests cog buildsBrandingSSLPluginFilePlugin enhancementsSocketPlugin xesIncluded libraries: freetype2, cairo 23. 2.0: CleanupsRemoval of FileDirectoryRemoval of ReferenceStream and bros 24. 2.0: Infrastructure ZeroConf script (chapter) Continuous integration for everything pharo/core pharo/contributions (ask if you need) SmalltalkHub 25. Vision Document around 2.0 PharoVision.pdf4.4 UI Canvas for Zoomable Interface 4.10 Building and Reusing UI Logic3.1 Towards a small kernel [we have [Waiting for TextModel and 3.0][First cut in 2.0 UIPainter for 3.0]it now we should think aboutmigration]4.5 Bootstrap of the Core [Done4.11 New Network Layer [Nothing]should be integrated in 3.0]3.2 Towards a veried package4.12 Serializers [Done]catalog [On the way]4.6 Fully parametrized compiler toolchain [Start with Opal in 3.0] 4.13 SystemChangeNotier4.1 A Robust and Extensible Systemreplacement [Done]Events [Beta and should be in 3.0]4.7Packages as real objects [in 2.0and will improve in 3.0] 4.14 Cleaning Morphic [To be4.2 Rewrite of Filesystem/Streams continued in 3.0][DONE for Files]4.8 Package Meta-Data [Done]4.3 Announcements and Ephemerons 5.2 VMs identication and regression[Annoucements Done. More Enh for4.9 Less Model Clutter and testing [On the way]3.0]Duplication [Started in 2.0 will beaccentuated in 3.0]5.3 One Unied FFI framework [before June] 26. We want to improve thecomplete system! 27. Not just a nice library on topof ... 28. Of course not everything isperfect 29. Retrospective analysis tomake progress 30. But we believe in non lineargrowth 31. Community Ongoing WorkBetter widgets, UI Builder (A. Plantec, G. Chambers, B. van Ryseghem)Better browsers (B. van Ryseghem, C. Bruni)Proxy (M. Martinez-Peck)New compiler (J. Ressia/M. Denker/JB Arnaud/)Vectorial canvas (I. Stasenko)Better FFI (I. Stasenko, E. Lorenzano)Bootstrap (G. Polito/S. Ducasse/N. Bouraqadi/L. Fabresse)Package distribution infrastructure (D. Henrichs)PDF generation (O. Auverlot, G. Larcheveque)Network (Zinc, Zodiac S. van Caekenberghe)Remote Smalltalk (N. Papoulias, N. Bouraqadi) 32. New ProcessTo dynamise and stabilize a long cycleChunked per monthRetrospective analysisContinue to have a Summer release and an alpha 33. Glimpse at 3.0OPAL for realAthensIntegration process using metacello!UIPainterRemove PackageInfo for realValidated packages 34. Distributions: towards acertied catalog I want to go to Mars with just a DVD, and still be able to load the projects I want, and get the right ones loaded. 35. Package certicationPackages should be more self containedTestsLintRulesMeta dataRun and automatically certied 36. CongsAutomated DistributionCongsValidationCongsDistributionInbox BrokenDistribution 37. ProcessYou use Metacello!You publish in your repo!When you want you can release code to a distributionAll the code then is recursively copied to thedistribution spaceAll the tests and quality rules are checkedPeople use your code but with a certain level ofcondence :) 38. Con gs 13Distrib Con gs 13Distrib ConBroken gs13Distrib Con Inbox gs 14DistribCongs14DistribBroken 14Distrib ConInboxgs Con gs CongOf 15Distrib MyProjectCongs15DistribBroken MyCore15Distrib MyUtilsInboxCon MyTests gsMyProject 39. Core and ...Core + Specications produces Specic loads Images CertiedCertiedPackages Packages CoreNew CoreChangesSpec New Spec Certied packages New Certied packages 40. Consortium & AssociationHow to sustain Pharo?How to structure the community?Let us talk about it tomorrow :) 41. @@Consortium Web Site@@ 42. Pharo booksPharo by example translated to french, merci! translated to spanish, gracias! japanese, german started 43. New books are comingDeep into PharoPharo for the EntrepriseIf you want to contribute...A glimpse at VM 44. We thank all the contributors, we knowwho you are :)Thanks SCG & T. Girba for this coolconferenceInria and RMoD for their continuoussupport