[squeak-dev] [ANN] Live type information for Smalltalk
Levente Uzonyi
leves at caesar.elte.hu
Wed Nov 28 17:56:42 UTC 2018
Hi Hernán,
This looks really cool. While I was watching the video, I was wondering
why you started to implement this in the VM. To me it seems more
straightforward to change the encoder to generate extra bytecodes to store
the type information. The advantage of this approach would be that it
could leverage the JIT.
Another thing I was thinking about are primitives. For most primitives you
know what the return type will be and what the expected arguments are, so
you could just create a lookup table for the code completion tool with
that information.
Levente
On Sat, 24 Nov 2018, Hernan Wilkinson wrote:
> Hi all!,I wanted to let you know that I have implemented a "feature" to have type information "live". Currently it is implemented on Cuis but the idea is to port it to Pharo and Squeak as well.
> This feature is based on a few changes on the VM that collects the class of the object assigned to a variable, a parameter or when returning from a method. That information is available from the image and allows to improve the tools radically, like the autocompletion on the
> browser, looking for senders/implementors and even "scoping" the refactorings based on the type info.
>
> I presented it at the last Smalltalks (the argentinean smalltalk conference) and I'm happy to announce its alpha version (1/1000) asFloat :-)
>
> Here is a link to the repo that has the VM and a Cuis image to play with it: https://github.com/hernanwilkinson/Cuis-Smalltalk-DynamicTypeInformation
> It also has the source of the VM's changes if you want to see how it is implemented. Currently it is implemented only in the stack VM and the VMs I compiled and uploaded to the repo are 64 bits for MacOs and Linux. (I don't have a Windows machine to compile it :-) )
>
> Here is a link to a video that shows how it is implemented and how to use it: https://t.co/n8FQuo7pKZ
>
> If you want to see the slides of the presentation, here is the link: https://www.slideshare.net/hernanwilkinson/dynamic-type-information
>
> I would love for you to try it and get feedback, ideas, etc.
> I really believe it is a "killer feature", something that could take Smalltalk one step further and show the way to other dynamically typed languages.
>
> Cheers!
> Hernan
>
> --
> Hernán Wilkinson
> Agile Software Development, Teaching & Coaching
> Phone: +54 - 011 - 6091 - 3125
> Mobile: +54 - 911 - 4470 - 7207
> email: hernan.wilkinson at 10Pines.com
> site: http://www.10Pines.com
> Address: Alem 693, Floor 5 B, Buenos Aires, Argentina
>
>
More information about the Squeak-dev
mailing list
|