[ANN][VMM] SlangBrowser - browser support for C generator

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

[ANN][VMM] SlangBrowser - browser support for C generator

David T. Lewis
I implemented interactive Slang code browsing as a VMMaker enhancement
for Squeak 3.8 and 3.9. I'm not sure what to do with this, so for now
I just stuck it on the swiki at <http://wiki.squeak.org/squeak/5916>.

After loading the change set, you can select either 'translate to C'
or 'translate to inlined C' in the 'What to show' menu of a normal browser
(any Browser or MessageSet). Translated C code it displayed in the
browser code window.

It's quite fast, because a cache of code generators is maintained to
support browsing. If a translatable class or method is changed, all
affected cache entries are invalidated, and new code generators are
created on demand.

Anyone who has ever gone digging through the generated C source for
the VM or for a plugin is sure to appreciate this.

Dave


Reply | Threaded
Open this post in threaded view
|

Re: [ANN][VMM] SlangBrowser - browser support for C generator

David T. Lewis
I updated SlangBrowser on <http://wiki.squeak.org/squeak/5916> to
separate the browser tools changes from the changes that belong in
the VMMaker package. The browser tools changes just allow a package
(VMMaker) to register new code display options in the browsers. The
remaining changes are (I hope) now properly categorized under VMMaker.

I have not figured out how to turn these into Montecello diffs yet,
so they are still change sets at this point.

Dave

On Sat, Feb 03, 2007 at 02:36:51PM -0500, David T. Lewis wrote:

>  
> I implemented interactive Slang code browsing as a VMMaker enhancement
> for Squeak 3.8 and 3.9. I'm not sure what to do with this, so for now
> I just stuck it on the swiki at <http://wiki.squeak.org/squeak/5916>.
>
> After loading the change set, you can select either 'translate to C'
> or 'translate to inlined C' in the 'What to show' menu of a normal browser
> (any Browser or MessageSet). Translated C code it displayed in the
> browser code window.
>
> It's quite fast, because a cache of code generators is maintained to
> support browsing. If a translatable class or method is changed, all
> affected cache entries are invalidated, and new code generators are
> created on demand.
>
> Anyone who has ever gone digging through the generated C source for
> the VM or for a plugin is sure to appreciate this.
>
> Dave