[Vm-dev] Recreating live coding in CPython 3.5

Ben Coman btc at openinworld.com
Wed Oct 11 21:41:36 UTC 2017

On Thu, Oct 12, 2017 at 12:38 AM, Dimitris Chloupis <kilon.alios at gmail.com>

> does "become" only exchange references ? Or is it more to it than that ?


Also interesting reading...

> where I can find information about what insance enumeration and reified
> stack frames are ?

Lhe last entry here...

Also, does Python do Polymorphic Inline Caching?...

or bytecode level hotspot recompilation...

cheers -ben

> Python has methods in gc module (module for its garbage collector) to find
> objects that point to an object or objects that an object point to . But it
> has no convenient method to exchange those references . I assume you could
> do it via an iteration but I never tried it in practice.
> Indeed such feature is essential for live coding.  I will have to add it
> to my implementation thanks.
> Is this book still relevant for my implementation ?
> http://stephane.ducasse.free.fr/FreeBooks/BlueBook/Bluebook.pdf
> On Wed, Oct 11, 2017 at 6:07 PM Bert Freudenberg <bert at freudenbergs.de>
> wrote:
>> On Wed 11. Oct 2017 at 16:27, Dimitris Chloupis <kilon.alios at gmail.com>
>> wrote:
>>> I am talking about beyond those obvious features that Python has them
>>> covered is there anything special the Cog VM is doing live coding wise that
>>> I am not aware of ?
>> Instance enumeration, the become operation, and reified stack frames are
>> features that set Smalltalk apart and enable many of its live coding
>> capabilities. Cog supports these features. Cog was specifically designed to
>> allow fast stack operations in the normal case while still allowing frame
>> manipulation. Spur was designed to make "become" fast, it used to be very
>> expensive.
>> - Bert -
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20171012/aa6cace5/attachment-0001.html>

More information about the Vm-dev mailing list