SlideShare a Scribd company logo
Pharo4
Plans and Dreams
Marcus Denker
http://rmod.lille.inria.fr
A bit early

‱ We are hard working to get Pharo3 out
‱ Not much yet happened with planning Pharo4
1 Year
9 Months
March 2014-December 2014
+Time for Bug ïŹxing
This is not a lot!
So not too many dreams

It needs to be doable
Ideas
‱ Slots
‱ ReïŹ‚ectivity
‱ One-File Pharo
‱ Tools
‱ GIT
‱ Athens
‱ Bootstrap
‱ Sista
Bootstrap
‱ Create an image from a git repository
‱ Control what the image contains
‱ Easier to make changes
‱ Enforces Modularity
Boostrap
‱ Working for Pharo3 as a prototype
!
‱ Can we even use this for Pharo4 on the build
server?
One File Pharo
‱ .sources, .changes. .image
!
‱ It is time to simplify that!
Epicea
‱ Replace .changes
‱ High level model:
‱ aggregate changes (refactoring)
‱ serialized to disk independent of source model
Pharo4: Plans and Dreams
Step2: Sources
‱ It is 2014: Memory is cheap.
‱ Complexity is expensive
‱ Why not just put the sources in the image?
‱ Just current version (compressed, of course)
‱ Code history is in Monticello (or Git)
Slots
‱ First class Instance Variables
‱ Already in Pharo3, but compatible (ivar Slot)
‱ For Pharo4: Provide different Slot kinds
Property Slots
Object
subclass: #PropertyObject
layout: PointerLayout
slots: {
ïŹeld => Slot
property1 => PropertySlot.
property2 => PropertySlot.
...
propertyN => PropertySlot.
}
Others
‱ BitSlot
‱ BooleanSlot
‱ Alias
‱ Relationships (e.g. one-one, one-many)
‱ 
. Your Domain level Slot!
More in Paper from OOPSLA
ReïŹ‚ectivity
‱ Partial Behavioral ReïŹ‚ection
‱ Associate MetaObject with structural object
‱ e.g. Slots
‱ AST nodes
Method
Can we modify the behaviour of code?
Meta
Link
> Annotate the AST with meta-links
Why?
‱ Change behaviour for selected AST Nodes
‱ “All assignments”
‱ “this message send”
But without changing the program code!
© Marcus Denker
Behavioral ReïŹ‚ection
source code
(AST)
meta-object
activation
condition
links
Uses

‱ Debugger
‱ BreakPoints, WatchPoints
‱ ProïŹlers
‱ Coverage Analysis
‱ AOP

 And Beyond
‱ Every year one Release
‱ Research happens in Parallel
‱ Lots of Interesting Stuff
‱ Sadly another talk
Questions ?

More Related Content

PDF
Pharo3 at Fosdem
PDF
Pharo Status Fosdem 2015
PDF
Pharo: Objects at your Fingertips
PDF
PharoDAYS 2015: Pharo Status - by Markus Denker
 
PDF
Pharo: A Reflective System
PDF
Pharo Status ESUG 2014
PDF
Pharo VM Performance
 
PDF
Terraform modules and (some of) best practices
Pharo3 at Fosdem
Pharo Status Fosdem 2015
Pharo: Objects at your Fingertips
PharoDAYS 2015: Pharo Status - by Markus Denker
 
Pharo: A Reflective System
Pharo Status ESUG 2014
Pharo VM Performance
 
Terraform modules and (some of) best practices

What's hot (19)

PDF
Terraform 0.12 + Terragrunt
PDF
Terraform AWS modules and some best-practices - May 2019
PDF
Writing Well-Behaved Unix Utilities
KEY
20120524 english lt2_pythontoolsfortesting
PDF
XmppTalk
 
PDF
Pentesting drivenbyfoca slides
PPTX
Python Multiprocessing Spoon-fed - Blue Raster Esri Developer Summit 2013 Lig...
PPTX
Python Applications
PDF
Pharo 64bits
 
PDF
Terraform Best Practices - DevOps Unicorns 2019
PDF
Terraform modules and (some of) best practices
PPTX
MPI Sessions: a proposal to the MPI Forum
PDF
Gotchas using Terraform in a secure delivery pipeline
PDF
Tensor Flow to CoreML model
PPTX
An Introduction To Python - Modules & Solving Real World Problems
PDF
Elasticwulf Pycon Talk
PDF
Prototyping Data Intensive Apps: TrendingTopics.org
PDF
What you see is what you get for AWS infrastructure
PDF
Automation in ArcGIS using Arcpy
Terraform 0.12 + Terragrunt
Terraform AWS modules and some best-practices - May 2019
Writing Well-Behaved Unix Utilities
20120524 english lt2_pythontoolsfortesting
XmppTalk
 
Pentesting drivenbyfoca slides
Python Multiprocessing Spoon-fed - Blue Raster Esri Developer Summit 2013 Lig...
Python Applications
Pharo 64bits
 
Terraform Best Practices - DevOps Unicorns 2019
Terraform modules and (some of) best practices
MPI Sessions: a proposal to the MPI Forum
Gotchas using Terraform in a secure delivery pipeline
Tensor Flow to CoreML model
An Introduction To Python - Modules & Solving Real World Problems
Elasticwulf Pycon Talk
Prototyping Data Intensive Apps: TrendingTopics.org
What you see is what you get for AWS infrastructure
Automation in ArcGIS using Arcpy
Ad

Similar to Pharo4: Plans and Dreams (20)

PDF
Soil and Pharo
 
PDF
Soil And Pharo
PDF
Notes on Reducing Firefox's Memory Consumption
PDF
Iceberg
 
PPTX
Developing a Staff-Only Samvera Application
PDF
Bringing WordPress to the front-end. o2 is the new P2
PDF
Pharo Status ESUG 2014
 
PDF
What is (not) Pharo 8?
 
PDF
Mathias Brandewinder, Software Engineer & Data Scientist, Clear Lines Consult...
 
PPTX
Kathryn Cassidy - Digital Repository of Ireland, A Case Study
KEY
360|Flex Recap - San Jose 2010
PDF
Pharo: A roadmap to solid evolution.
PDF
Pharo Consortium: A roadmap to solid evolution
 
PDF
Perl5 meta programming
PDF
Open Source Tools for Leveling Up Operations FOSSET 2014
PPT
Bridging the Gap - Laracon 2013
PDF
Canola: More than a Media Player
PPTX
Rebooting design in RavenDB
PDF
10.15.14 Presentation Slides, “Fedora 4.0 in Action at The Art Institute of C...
PDF
Prototyping like it is 2022
Soil and Pharo
 
Soil And Pharo
Notes on Reducing Firefox's Memory Consumption
Iceberg
 
Developing a Staff-Only Samvera Application
Bringing WordPress to the front-end. o2 is the new P2
Pharo Status ESUG 2014
 
What is (not) Pharo 8?
 
Mathias Brandewinder, Software Engineer & Data Scientist, Clear Lines Consult...
 
Kathryn Cassidy - Digital Repository of Ireland, A Case Study
360|Flex Recap - San Jose 2010
Pharo: A roadmap to solid evolution.
Pharo Consortium: A roadmap to solid evolution
 
Perl5 meta programming
Open Source Tools for Leveling Up Operations FOSSET 2014
Bridging the Gap - Laracon 2013
Canola: More than a Media Player
Rebooting design in RavenDB
10.15.14 Presentation Slides, “Fedora 4.0 in Action at The Art Institute of C...
Prototyping like it is 2022
Ad

More from Pharo (20)

PDF
Yesplan: 10 Years later
 
PDF
Object-Centric Debugging: a preview
 
PDF
The future of testing in Pharo
 
PDF
Spec 2.0: The next step on desktop UI
 
PDF
UI Testing with Spec
 
PDF
Pharo 7.0 and 8.0 alpha
 
PDF
PHARO IoT: Installation Improvements and Continuous Integration
 
PDF
Easy REST with OpenAPI
 
PDF
Comment soup with a pinch of types, served in a leaky bowl
 
PDF
apart Framework: Porting from VisualWorks
 
PDF
A living programming environment for blockchain
 
PDF
Raspberry and Pharo
 
PDF
Welcome: PharoDays 2017
 
PDF
Pharo 6
 
PDF
Robotic Exploration and Mapping with Pharo
 
PDF
Smack: Behind the Refactorings
 
PDF
Git with Style
 
PDF
Pharo JS
 
PDF
Seaside & ReactJS
 
PDF
Material Design and Seaside
 
Yesplan: 10 Years later
 
Object-Centric Debugging: a preview
 
The future of testing in Pharo
 
Spec 2.0: The next step on desktop UI
 
UI Testing with Spec
 
Pharo 7.0 and 8.0 alpha
 
PHARO IoT: Installation Improvements and Continuous Integration
 
Easy REST with OpenAPI
 
Comment soup with a pinch of types, served in a leaky bowl
 
apart Framework: Porting from VisualWorks
 
A living programming environment for blockchain
 
Raspberry and Pharo
 
Welcome: PharoDays 2017
 
Pharo 6
 
Robotic Exploration and Mapping with Pharo
 
Smack: Behind the Refactorings
 
Git with Style
 
Pharo JS
 
Seaside & ReactJS
 
Material Design and Seaside
 

Recently uploaded (20)

PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PDF
medical staffing services at VALiNTRY
PDF
AI in Product Development-omnex systems
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Digital Strategies for Manufacturing Companies
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
System and Network Administration Chapter 2
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
Online Work Permit System for Fast Permit Processing
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
How Creative Agencies Leverage Project Management Software.pdf
Wondershare Filmora 15 Crack With Activation Key [2025
Navsoft: AI-Powered Business Solutions & Custom Software Development
medical staffing services at VALiNTRY
AI in Product Development-omnex systems
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Digital Strategies for Manufacturing Companies
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Operating system designcfffgfgggggggvggggggggg
System and Network Administration Chapter 2
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PTS Company Brochure 2025 (1).pdf.......
Online Work Permit System for Fast Permit Processing
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Design an Analysis of Algorithms II-SECS-1021-03
How Creative Agencies Leverage Project Management Software.pdf

Pharo4: Plans and Dreams