Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

Like this presentation? Why not share!

Objects History



Objects History, Pluquet Frédéric. ESUG 2006, Prague

Objects History, Pluquet Frédéric. ESUG 2006, Prague



Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Objects History Objects History Presentation Transcript

  • bjects History Pluquet Frédéric Université Libre de Bruxelles (Brussels) fpluquet@ulb.ac.be For ESUG’06 - At Prague 1
  • What is Objects History ? Object-Oriented Model to save history (each state) of live objects efficiently Pluquet Frédéric 2 fpluquet@ulb.ac.be 2
  • Example :Without Objects History ::Point ::Point x ← 10 x: 10 x: 0 y: 0 y: 0 Old values of attributes are lost ! Pluquet Frédéric 3 fpluquet@ulb.ac.be 3
  • Example : With Objects History ::Point ::Point ::Point x ← 10 x ← 20 x: 0 x: 0,10 x: 0,10,20 y: 0 y: 0 y: 0 Pluquet Frédéric 4 fpluquet@ulb.ac.be 4
  • Possible questions to the system What are all states of this object ? What are all values of x ? What are the values of x when y equals 10 ? What is the state of this object at time t ? (t can be any time) Pluquet Frédéric 5 fpluquet@ulb.ac.be 5
  • Applications (1/3) Classical applications CVS, SVN, ... Add history to existing applications Undo/Redo in T Editor ext SmallWiki ... Pluquet Frédéric 6 fpluquet@ulb.ac.be 6
  • Applications (2/3) Adding states to execution traces T be able to inspect state of objects o at any given point in past “Timeless breakpoints” Pluquet Frédéric 7 fpluquet@ulb.ac.be 7
  • Applications (3/3) Use Objects History to allow backtrack with side-effects in Soul class(?c), [?c compile: ?code], classNameMatching(?c, ‘A*’) Pluquet Frédéric 8 fpluquet@ulb.ac.be 8
  • State of research Prototype for VisualWorks 7.4 and Squeak 3.9 Prototype of a trace recorder using Objects History (VW 7.4) Made text editors of VW 7.4 persistent using Objects History to undo / redo Pluquet Frédéric 9 fpluquet@ulb.ac.be 9
  • Future Work Optimization of Objects History Incorporate Objects History into existing applications Collaboration with Marcus Denker ByteSurgeon + Objects History = an efficient Trace Recorder ? Pluquet Frédéric 10 fpluquet@ulb.ac.be 10
  • Questions ? ::Point x: 0,10,30 ::Rect y: 0,5,10 origin: corner: ::Point x: 0,60 y: 0,15 Pluquet Frédéric 11 fpluquet@ulb.ac.be 11