Pharo Roadmap

  • 2,214 views
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
2,214
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
8
Comments
1
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. The Pharo RoadmapM. Denker and S. Ducassehttp://www.pharo-project.org
  • 2. Create an ecosystemwhere business/innovation can bloom
  • 3. Some Pharo’s successstoriesSeaside.stYesplan.be, netstyle.chPier, DrGeoCmsbox.ch: Content Managementbeta9.be: T3 Easy (Pharo server side)Moose: www.moose-technology.orgpinesoft.uk.com: MBaggerAirflowing
  • 4. Be able to invent our future
  • 5. Done so far1.3 is released (a lot, a lot, and a lot of improvements :)1.4 alpha startedJenkins server for everythingAll VMs are automatically generated using Jenkins
  • 6. Community Ongoing WorkBetter widgets (A. Plantec, G. Chambers, B. van Ryseghem)Better browsers (B. van Ryseghem, C. Bruni)Key mapper (G. Polito)Serializer (M. Dias, M. Martinez-Peck), Full Proxy (M. Martinez-Peck)New source code model: Ring (V. Uquillas Gomez, A. Kellens, S. Ducasse)New compiler (J. Ressia/M. Denker/JB Arnaud)Zoomable interface (I. Stasenko)Bootstrap (B. van Ryseghem/S. Ducasse)Package distribution infrastructure (D. Henrichs)Network (Zinc S. van Caekenberghe, Ocean N. Bouraqadi, L. Fabresse, J. Laval)Remote Smalltalk (N. Papoulias and N. Bouraqadi)
  • 7. RoadmapBuilding the infrastructure for the next generation
  • 8. Code Model InfrastructureAble to query all the versionsWhat were the senders of this method in version13168?What is the diff between the senders in the past andthe one now?Support for mergingDistributed source code
  • 9. Code Model InfrastructureRing (V. Uquillaz Gomes/A. Kellens/S.Ducasse) Source code metamodel API compatible with Smalltalk objectsAdding layers on top of itPorting all the tools to use it!Reuse tools
  • 10. Next StepsServer for queriesNew source code model
  • 11. Athens GraphicsNew Canvas Vector Graphics API Layered Architecture Backend Cairo / OpenGL OpenVG....
  • 12. Next StepsOpenGL bindings using NativeBoost done on WindowsStabilize APIAdapt Morphic
  • 13. OpalWe need a more flexibleand simpler compilerHooks for DSL supportBetter APINew generation of tools
  • 14. Next StepsDecompiler (was the last missing bit) is nearly finishedSoon added in 1.4Throw away the old compilerThen improving the API
  • 15. Fuel: Fast Serialization Done by M. Diaz, M. Martinez-Peck, (T. Bourgeois & S. Ducasse) Don’t use ImageSegment (removed in 1.4) Fuel is faster (!!) Much more flexible and easier to understand
  • 16. Next StepsReplace existing serializersMigration pathBinary code loader
  • 17. Scripting Syntax: Coral We want to write scripts in Pharo :) Headless REPL OS connexion (OSProcess for now) So we get Coral D. Pollet (and S. Ducasse)
  • 18. [ Console puts: Before the command. ][ "Lets define a command" | command | Console puts: duuuuhhh. command := (CLICommandParser named: dostuff) aliases: #(dostuff.coral); description: This command does a lot of stuff. Ireally mean a lot..]
  • 19. Distributions: towards acertified catalog I want to go to Mars with just a DVD, and still be able to load the projects I want, and without internet, please!
  • 20. 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 ofconfidence :)
  • 21. Varia Making sure that we will be able to use announcements instead of SystemChangeNotifier Cleaning Morphic New package infrastructure
  • 22. Package certificationPackages should be more self containedTestsLintRulesMeta dataRun and automatically certified
  • 23. Native BoostBy Igor Stasenko (mac, linux and windows 32bits)Generate machine code on the fly :)Implement primitivesFFI
  • 24. VMExpand knowledgeWelcome newbies and idiots (like Stef)Increase testsRelease VM builders from stupid tasksTraceability/Branding
  • 25. VM buildsAnybody is now able to build a vm!
  • 26. VM Infrastructure VM validation after ANY changes Automatic recompilation Automatic test regressions
  • 27. Nautilus Throw away StringHolder hierarchy (Yes Browser inherits from StringHolder) Browser based on a model Nautilus by B. van Ryseghem
  • 28. Next StepsReimplement ChangeSorter MC UI Debugger
  • 29. Mini ImagePavel’s Mini image4.2 mb for Seaside
  • 30. Future?Native boostGoogle native clientFull bootstrapMore secure system
  • 31. Pharo ConsortiumHow to sustain Pharo?How to structure the community?Should we always rely on people free time?
  • 32. ConsortiumYou can participate to the consortium: Pay a feeThe consortium will pay a full-time engineer to supportPharo tasks
  • 33. WhenStarted discussions with INRIA two years agoINRIA is ok to put money on the table (undernegotiation)More than 25 companies are interestedJoin!
  • 34. Consortium FAQPharo will stay free!No negative impact: just a better PharoPeople and organization should be able to pay too:a.k.a. Morale License
  • 35. Pharo booksPharo by example translated to french, merci! translated to spanish, gracias! japanese, german started
  • 36. New books are comingPharo by Example Volume Two (deep into Pharo)Pharo for the Entreprise If you want to contribute...A glimpse at VM
  • 37. Doing a Master with us :) Slim binaries (compressing AST as bytecodes) Virtual Filesystem Fuel-ing the code Source manager Peer to peer sources NativeBoost as a foundational engine Bootstrap next steps
  • 38. Thanks Alexandre Bergel Matthew Fulmer Hilaire Fernandes Julian Fitzell Laurent Laffont Joseph Pelrine Cedric Beler Tudor Girba Alain Plantec Torsten Bergmann Sean Glazier Damien Pollet Matthias Berth Norbert Hartl Lukas Renggli Ralph Boland Dale Henrichs Jorge Ressia Noury Bouraqadi Reinout Heeck Mike Roberts Brian Brown Eric Hochmeister Robert Rothwell Guillermo Polito Keith Hodges David Rotlisberger Damien Cassou Henrik Sperre Johansen Michael Rueger Nicolas Cellier Pavel Krivanek Bill Schwab Gary Chambers Adrian Kuhn Niko Schwarz Miguel Coba Adrian Lienhard Igor Stasenko Gabriel Cotelli Andreas Leidig Francois Stephany Carlos Crosetti Mariano Martinez Peck Serge Stinckwich Cyrille Delaunay Dave Mason Mathieu Suen Simon Denier John McIntosh Lawrence Trutter Marcus Denker Johnaton Meichtry Andrew Tween Ramiro Diaz Trepat Eliot Miranda martin von loewis Stephane Ducasse Hernan Morales Durand Andres Valloud Morales Durand Hernan Philipp Marshall Juan Vuletich Stephan Eggermont Jannik Laval Steven Wirts Luc Fabresse Yann Monclair Hernan Wilkinson Oscar Nierstrasz