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 |
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 |
Free forum by Nabble | Edit this page |