[squeak-dev] [ANN] TruffleSqueak 20.1.0 released

Fabio Niephaus lists at fniephaus.com
Sun Jun 21 17:36:31 UTC 2020


On Sun, Jun 21, 2020 at 6:31 AM Ben Coman <btc at openinworld.com> wrote:
>
> On Sat, 20 Jun 2020 at 21:37, Fabio Niephaus <lists at fniephaus.com> wrote:
>>
>> Hi all,
>>
>> I'd like to officially announce the first stable release of
>> TruffleSqueak [1], a Squeak/Smalltalk VM and Polyglot Programming
>> Environment for the GraalVM [2]. As some of you know, we at HPI [3]
>> have been working on this for quite a while and open-sourced it a few
>> weeks after our presentation at ESUG'19 [4].
>>
>> The virtual machine is implemented in Truffle [5], GraalVM's
>> Java-based language implementation framework. The image has direct
>> access to GraalVM's language interoperability protocol [6] and based
>> on this, we have adapted the workspace and inspection tools so that
>> they work consistently for objects from Javascript, Python, R, Ruby,
>> and all other languages supported by GraalVM. In addition, the image
>> comes with our polyglot notebook system [7] and a polyglot code editor
>> [8]. You may also find our paper on TruffleSqueak (formerly
>> GraalSqueak) [9] and our blog post on "Smalltalk with the GraalVM"
>> [10] an interesting read. Nonetheless, please keep in mind that
>> TruffleSqueak is a research project, so there will be bugs (please
>> report them at [11]) and things left to do (feedback is welcome!).
>>
>> You can follow TruffleSqueak on Twitter [12] for more updates. On June
>> 24, I'm also going to talk about TruffleSqueak in the UK Smalltalk
>> User Group meeting [13], and you are invited to join us.
>>
>> Lastly, I’d like to thank everyone who has contributed to
>> TruffleSqueak and I'm excited to see what you’re going to do with it.
>>
>> Fabio
>>
>>
>> [1] https://github.com/hpi-swa/trufflesqueak
>> [2] https://www.graalvm.org
>> [3] https://hpi.de/swa
>> [4] https://www.youtube.com/watch?v=FAk3Ec8hmzk
>> [5] https://github.com/oracle/graal/tree/master/truffle
>> [6]
https://www.graalvm.org/truffle/javadoc/com/oracle/truffle/api/interop/InteropLibrary.html
>> [7] https://doi.org/10.1145/3328433.3328434
>> [8]
https://medium.com/graalvm/hpi-polyglot-programming-seminar-3fd06ffa59d2
>> [9] https://doi.org/10.1145/3357390.3361024
>> [10] https://www.javaadvent.com/2019/12/smalltalk-with-the-graalvm.html
>> [11] https://github.com/hpi-swa/trufflesqueak/issues
>> [12] https://twitter.com/TruffleSqueak/
>> [13] https://www.meetup.com/UKSTUG/events/cbklbrybcjbgc/
>>
>
> This is super cool Fabio.  Ever since a long time ago I noticed...
>       Behaviour >> compilerClass
> I always thought Squeak/Pharo might make a good polygot platform.
>
> I notice in the video [4] that you just run things from the Workspace
(which itself is great)
> but you don't make use of the Squeak's code browser or the debugger.
What are the constraints there?

Sorry, I forgot to talk about the debugger. This one is tricky because
polyglot debugging is only supported through external instruments, not from
the main thread. It might be possible to add support for debugging other
languages when they run in a different thread, but we haven't tried that
out yet. Anyway, GraalVM supports debugging languages using the Chrome
debugger [1], and that somewhat works for Squeak. If you run TruffleSqueak
with `trufflesqueak --inspect`, you can debug the image on the bytecode
level starting right after the snapshot primitive:

[image: image.png]

Cheers,
Fabio

[1] https://www.graalvm.org/docs/tools/chrome-debugger

>
> cheers -ben
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200621/3249d0c3/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image.png
Type: image/png
Size: 166016 bytes
Desc: not available
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200621/3249d0c3/attachment-0001.png>


More information about the Squeak-dev mailing list