[Vm-dev] Polyphemus, a

Pierre Misse pierre_misse25 at msn.com
Mon Oct 31 16:45:15 UTC 2022


Hello,

My name is Pierre Misse-Chanabier.
I'm finishing my PhD in the RMOD team on testing Virtual Machines soon.
I wanted to share with you a project I did with Theo Rogliano on the 
Pharo VM, which should be straightforward to use on the OpenSmalltalk-VM 
as well.
Except for the UI, of course !

In a nutshell, Polyphemus [1] reifies OOPs in the memory to propose a 
representation that is closer to the language level.
Therefore, it provides a layer that is easier to work with.
For example, if an OOP is pointing to a class, I can ask for its name, 
inspect it as I would at the language level, or send message special to 
a class that shouldn't work on a string OOP for example.
We have develop a few visualizations and basic tools for the Pharo VM.
Particularly, we have been able to fix error containing meta-errors and 
memory corruptions.
You may have encounter a video of this at the Technological Innovation 
award at ESUG 2022 [2].
We have also wrote a paper that will be published soon at VMIL 2022 [3].

I haven't checked in quite a long time, but I think that most (or all) 
of the simulator features we use in Polyphemus are available in the 
OpenSmalltal-VM as well.

I hope it'll be useful to someone else, or at least interesting to some 
of you :)

Pierre

[1] Github Repository: https://github.com/hogoww/Polyphemus/
[2] Video Presentation for Esug Innovation award (I was unable to 
present it myself): https://www.youtube.com/watch?v=zf3cCtNW830
[3] VMIL'22: Ease VM Level Tooling with Language Level Ordinary Object 
Pointers https://hal.inria.fr/hal-03827632 (preprint)


More information about the Vm-dev mailing list