[squeak-dev] Backward image and VM compatibility (was: Graphing weather data)

David T. Lewis lewis at mail.msen.com
Wed Dec 21 16:38:33 UTC 2016

On Tue, Dec 20, 2016 at 09:47:39PM -0500, David T. Lewis wrote:
> On Tue, Dec 20, 2016 at 05:36:16PM -0800, tim Rowledge wrote:
> > Now that I have my Pi based weather station[1] in operation and mounted up on the peak of my garage roof ...
> Sounds like fun :-)
> > 
> > ??? I need to do something with the data it provides. Sadly the code reading the sensors is in Python (for now!) but it sends it as MQTT packets to a mac-mini running the broker. I???m working with Craig on an MQTT client (very early state on http://www.squeaksource.com/@gWFeIvLx-rTHKE2R/Gtrt3pje) to read it but then what?
> > 
> > Are there any current projects that will work in squeak5.1/spur that can draw nice graphs? What kind of graphs are good for weather data? Should there be chocolate? I guess I ought to store some amount of collected data so maybe it???s time I got to grips with Magma. I???m interested in all ideas that might lead somewhere fun with this. With those ESP8266 wi-fi enabled sorta-arduino things so cheap and easy to set up there must be a gazillion interesting things that could be monitored and analyzed and graphed and indeed actuated in response; let???s not forget that MQTT works both ways.
> > 
> We had some very suitable graph drawing packages about 10 or 15 years ago,
> so I pulled out some old images that I was working on back then to have a
> look. I remember being able to interact directly with the graphs, and open
> inspectors on the points on the graph to look at the data, that sort of thing.

Indeed I was thinking of PlotMorph, as Bernhard Pieber suggested in his reply.

> Unfortunately I find to my considerable dismay that I cannot run those images
> any mmore. I suspect a few too many numbered primitive updates in the intervening
> years, yuk. Might be time to move to SqueakJS.

Following up on this, the backward compatibility for interpreter VM supporting
old images was broken in VMMaker-dtl.387 of 8 November 2016, due to my attempt
to align the primitive table closer to Cog/Spur:

  VMMaker 4.15.9
  Various refactorings for stack/context interpreters.
  VMMaker tool allow selection of context or stack interpreter (stack is not yet functional, requires struct code generation).
  Add some FilePlugin updates from oscog, excluding those with platforms code dependencies (primitiveDirectoryEntry, primitiveDirectoryDelimitor).
  Retire some old primitives in Interpreter class>>initializePrimitiveTable to align with oscog.

I confirmed that the prior version does still run my older images from 10 or 15 years ago.
For the record, that version of the code can be checked out and compiled with:

  $ svn co -3749 http://squeakvm.org/svn/squeak/trunk/platforms
  $ svn co -r3749 http://squeakvm.org/svn/squeak/trunk/src
  $ mkdir build; cd build
  $ cp ../platforms/unix/cmake/Makefile.example Makefile
  $ make
  $ sudo make install

I'm trying to think of a suitable way to initialize the primitive table at runtime,
such that a wider range of images can be supported. But I guess that discussion belongs
on vm-dev.


More information about the Squeak-dev mailing list