The idea of VM Learning Toolkit

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

The idea of VM Learning Toolkit

Mariano Martinez Peck
 
Hi guys. Since several months, I wanted to create a little browser for learning VM and related stuff. I never did anything because I was lazy. Last week, I took Glamour and without knowing almost anything about it, in less than 3 hours, I come up with what I want to share with you. Basically, I only have the browsers for the moment. My knowledge is very limited in the Slang to C translator, or machine code simulation. The only thing I need is CompiledMethod >> #asCString and #asMachineCode. Eliot told me he was going to provide me such stuff for machine code, and hopefully Dave can help me with the C code.

Having said that, I would like to share what I have in mind:  there are 3 browsers:

1) VMBrowserSlang:  shows only packages and classes which are written in slang. When you select a method, you have 2 panels: smalltalk code and C translated code.
Screenshot: http://img857.imageshack.us/i/vmbrowserslang.png/

2) VMBrowserMethods:  shows all packages and classes of the system and for every method, you have 3 panels: smalltalk code, bytecodes and machine code (using the simple mapping)
Screenshot: http://img862.imageshack.us/i/vmbrowsermethods.png/

3) VMBrowserMappings: this is for you Eliot!!  Basically, it  shows all packages and classes of the system and for every method, you have 5 panels: smalltalk code and one panel per strategy to map to machine code (simple cogit, sista, etc).
Screenshot:  http://img4.imageshack.us/f/vmbrowsermappings.png/

As soon as someone can provide me the #asMachineCode and #asCString for Cog, I release it.

What do you think ?

--
Mariano
http://marianopeck.wordpress.com

Reply | Threaded
Open this post in threaded view
|

Re: The idea of VM Learning Toolkit

David T. Lewis
 
On Tue, Apr 19, 2011 at 07:32:15PM +0200, Mariano Martinez Peck wrote:

>  
> Hi guys. Since several months, I wanted to create a little browser for
> learning VM and related stuff. I never did anything because I was lazy. Last
> week, I took Glamour and without knowing almost anything about it, in less
> than 3 hours, I come up with what I want to share with you. Basically, I
> only have the browsers for the moment. My knowledge is very limited in the
> Slang to C translator, or machine code simulation. The only thing I need is
> CompiledMethod >> #asCString and #asMachineCode. Eliot told me he was going
> to provide me such stuff for machine code, and hopefully Dave can help me
> with the C code.
>
> Having said that, I would like to share what I have in mind:  there are 3
> browsers:
>
> 1) VMBrowserSlang:  shows only packages and classes which are written in
> slang. When you select a method, you have 2 panels: smalltalk code and C
> translated code.
> Screenshot: http://img857.imageshack.us/i/vmbrowserslang.png/
>
> 2) VMBrowserMethods:  shows all packages and classes of the system and for
> every method, you have 3 panels: smalltalk code, bytecodes and machine code
> (using the simple mapping)
> Screenshot: http://img862.imageshack.us/i/vmbrowsermethods.png/
>
> 3) VMBrowserMappings: this is for you Eliot!!  Basically, it  shows all
> packages and classes of the system and for every method, you have 5 panels:
> smalltalk code and one panel per strategy to map to machine code (simple
> cogit, sista, etc).
> Screenshot:  http://img4.imageshack.us/f/vmbrowsermappings.png/
>
> As soon as someone can provide me the #asMachineCode and #asCString for Cog,
> I release it.
>
> What do you think ?

Mariano,

I think this is a really good idea to enable folks to browse and
learn about the VM in the image itself.

Dave