In https://github.com/pharo-project/pharo-workingRoadmaps/blob/master/CleaningN... I see that you want to remove history, text/bytecode icons Why ? I am using those. Phil
2014-09-24 18:14 GMT+02:00 phil@highoctane.be <phil@highoctane.be>:
In https://github.com/pharo-project/pharo-workingRoadmaps/blob/master/CleaningN...
I see that you want to remove history, text/bytecode icons
Why ?
I am using those.
Phil
My main concern is, cleaning up the code. I don't want to change the functionality or appearance. But some users suggest to remove the icons and history. I would, if possible change this to a plugin. But if that does not work (history panel). I would keep it.
On 24/9/14 18:14, phil@highoctane.be wrote:
In https://github.com/pharo-project/pharo-workingRoadmaps/blob/master/CleaningN...
I see that you want to remove history, text/bytecode icons
Why ?
I am using those.
I propose that. I would prefer that people use the plugins that they want and that the default is lighter. Simplifying - the history to me is really limited. - for the buttons one button is to switch mode other button (the I) with the same symbolic feel are queries (ugly) - I do not see why we need button to switch more for something that really few people use (it could be a menu) or at least a checkbox and not a button.
Phil
Well, the full story is that the decompiler is now gone with Opal. So, there were 3 in the beginning. So, of course with 2, this becomes a switch. Why no decompiler anymore, for the layman I am? Phil On Thu, Sep 25, 2014 at 10:26 PM, stepharo <stepharo@free.fr> wrote:
On 24/9/14 18:14, phil@highoctane.be wrote:
In https://github.com/pharo-project/pharo-workingRoadmaps/blob/master/ CleaningNautilusRoadmap.md
I see that you want to remove history, text/bytecode icons
Why ?
I am using those.
I propose that.
I would prefer that people use the plugins that they want and that the default is lighter.
Simplifying - the history to me is really limited. - for the buttons one button is to switch mode other button (the I) with the same symbolic feel are queries (ugly) - I do not see why we need button to switch more for something that really few people use (it could be a menu) or at least a checkbox and not a button.
Phil
afaik, we have a new decompiler, to correct that absence (which was just temporal). check at Opal-Decompiler package. Esteban On 25 Sep 2014, at 23:02, phil@highoctane.be wrote:
Well, the full story is that the decompiler is now gone with Opal.
So, there were 3 in the beginning. So, of course with 2, this becomes a switch.
Why no decompiler anymore, for the layman I am?
Phil
On Thu, Sep 25, 2014 at 10:26 PM, stepharo <stepharo@free.fr> wrote:
On 24/9/14 18:14, phil@highoctane.be wrote:
In https://github.com/pharo-project/pharo-workingRoadmaps/blob/master/CleaningN...
I see that you want to remove history, text/bytecode icons
Why ?
I am using those.
I propose that. I would prefer that people use the plugins that they want and that the default is lighter.
Simplifying - the history to me is really limited. - for the buttons one button is to switch mode other button (the I) with the same symbolic feel are queries (ugly) - I do not see why we need button to switch more for something that really few people use (it could be a menu) or at least a checkbox and not a button.
Phil
On 25 Sep 2014, at 23:02, phil@highoctane.be wrote:
Well, the full story is that the decompiler is now gone with Opal.
There is a decompiler again in Pharo4
So, there were 3 in the beginning. So, of course with 2, this becomes a switch.
Why no decompiler anymore, for the layman I am?
The *option* of showing decompiled code in the browser: Honestly, I do not get why this was useful, ever. Marcus
Hi Marcus--
Honestly, I do not get why [showing decompiled code in the browser] was useful, ever.
Some of my debugging sessions require using the virtual machine simulator. I find browser-presented decompilation useful for finding my place in a method I'm running that way. It's also useful for learning about how the compiler and virtual machine work. -C -- Craig Latta netjam.org +31 6 2757 7177 (SMS ok) + 1 415 287 3547 (no SMS)
On 26 Sep 2014, at 09:04, Craig Latta <craig@netjam.org> wrote:
Hi Marcus--
Honestly, I do not get why [showing decompiled code in the browser] was useful, ever.
Some of my debugging sessions require using the virtual machine simulator. I find browser-presented decompilation useful for finding my place in a method I'm running that way. It's also useful for learning about how the compiler and virtual machine work.
so is a good functionality for putting in plugin, not a standard feature of nautilus: if working with vm simulator, if debugging it, if⦠Esteban
-C
-- Craig Latta netjam.org +31 6 2757 7177 (SMS ok) + 1 415 287 3547 (no SMS)
On 26 Sep 2014, at 9:08 , Esteban Lorenzano <estebanlm@gmail.com> wrote:
On 26 Sep 2014, at 09:04, Craig Latta <craig@netjam.org> wrote:
Hi Marcus--
Honestly, I do not get why [showing decompiled code in the browser] was useful, ever.
Some of my debugging sessions require using the virtual machine simulator. I find browser-presented decompilation useful for finding my place in a method I'm running that way. It's also useful for learning about how the compiler and virtual machine work.
so is a good functionality for putting in plugin, not a standard feature of nautilus: if working with vm simulator, if debugging it, ifâ¦
Esteban
I've also found it useful when doing optimization work on normal code. If you're not entirely certain what the compiler is capable of, it helps you determine things like wether temps are automatically moved to the smallest enclosing scope, whether a certain function gets inlined, etc. I imagine with Sista, it becomes an even more essential tool for checking what the compiler actually produces. Building and debugging something like that without a decompiler also seems like a whole lot of pain... Cheers, Henry
2014-09-26 13:58 GMT+02:00 Henrik Johansen <henrik.s.johansen@veloxit.no>:
On 26 Sep 2014, at 9:08 , Esteban Lorenzano <estebanlm@gmail.com> wrote:
On 26 Sep 2014, at 09:04, Craig Latta <craig@netjam.org> wrote:
Hi Marcus--
Honestly, I do not get why [showing decompiled code in the browser] was useful, ever.
Some of my debugging sessions require using the virtual machine simulator. I find browser-presented decompilation useful for finding my place in a method I'm running that way. It's also useful for learning about how the compiler and virtual machine work.
so is a good functionality for putting in plugin, not a standard feature
of nautilus: if working with vm simulator, if debugging it, ifâ¦
Esteban
I've also found it useful when doing optimization work on normal code. If you're not entirely certain what the compiler is capable of, it helps you determine things like wether temps are automatically moved to the smallest enclosing scope, whether a certain function gets inlined, etc. I imagine with Sista, it becomes an even more essential tool for checking what the compiler actually produces. Building and debugging something like that without a decompiler also seems like a whole lot of pain...
Hello, Two decompilers are available in Pharo 3, one for each compiler. They both can decompile 99% of Pharo methods. I enhanced one of them to decompile simple sista methods. However, the optimizer may generate code that cannot be expressed at source level, so some method cannot be decompiled. I am not sure the right place for decompiled sista method is in nautilus. In nautilus the user now sees the source code of the non optimized method, and if he edits it and compiles it, the optimized method is removed from method dictionary. It would be strange to have decompiled code not matching the source code. However, I have my own tools using the decompiler to debug sista.
Cheers, Henry
Hi Marcus, On Thu, Sep 25, 2014 at 11:29 PM, Marcus Denker <marcus.denker@inria.fr> wrote:
On 25 Sep 2014, at 23:02, phil@highoctane.be wrote:
Well, the full story is that the decompiler is now gone with Opal.
There is a decompiler again in Pharo4
So, there were 3 in the beginning. So, of course with 2, this becomes a switch.
Why no decompiler anymore, for the layman I am?
The *option* of showing decompiled code in the browser: Honestly, I do not get why this was useful, ever.
I can think of three reasons. 1. mutable literals. using the decompiler is a quick way to check if a literal has been corrupted/modified 2. if you're working on the decompiler this is convenient 3. when Dan's encode temp names in trailer and decompile scheme was being developed/used there would be no need to display sources
Marcus
-- best, Eliot
On 26 Sep 2014, at 20:44, Eliot Miranda <eliot.miranda@gmail.com> wrote:
Hi Marcus,
On Thu, Sep 25, 2014 at 11:29 PM, Marcus Denker <marcus.denker@inria.fr> wrote:
On 25 Sep 2014, at 23:02, phil@highoctane.be wrote:
Well, the full story is that the decompiler is now gone with Opal.
There is a decompiler again in Pharo4
So, there were 3 in the beginning. So, of course with 2, this becomes a switch.
Why no decompiler anymore, for the layman I am?
The *option* of showing decompiled code in the browser: Honestly, I do not get why this was useful, ever.
I can think of three reasons.
1. mutable literals. using the decompiler is a quick way to check if a literal has been corrupted/modified
2. if you're working on the decompiler this is convenient
Yes, but all this does not mean that there need to be a button always visible for it⦠(and maybe GTInspector already provides the perfect tool for it? I guess it does: Decompiler can define a view for CompiledMethod, it is added as a tab, the tabs let you switch easily between code, AST, IR, CM Header and everyone else who defines an inspector view for the method)
3. when Dan's encode temp names in trailer and decompile scheme was being developed/used there would be no need to display sources
We removed that⦠Marcus
On 27 Sep 2014, at 09:25, Marcus Denker <marcus.denker@inria.fr> wrote:
On 26 Sep 2014, at 20:44, Eliot Miranda <eliot.miranda@gmail.com> wrote:
Hi Marcus,
On Thu, Sep 25, 2014 at 11:29 PM, Marcus Denker <marcus.denker@inria.fr> wrote:
On 25 Sep 2014, at 23:02, phil@highoctane.be wrote:
Well, the full story is that the decompiler is now gone with Opal.
There is a decompiler again in Pharo4
So, there were 3 in the beginning. So, of course with 2, this becomes a switch.
Why no decompiler anymore, for the layman I am?
The *option* of showing decompiled code in the browser: Honestly, I do not get why this was useful, ever.
I can think of three reasons.
1. mutable literals. using the decompiler is a quick way to check if a literal has been corrupted/modified
2. if you're working on the decompiler this is convenient
Yes, but all this does not mean that there need to be a button always visible for it⦠(and maybe GTInspector already provides the perfect tool for it? I guess it does: Decompiler can define a view for CompiledMethod, it is added as a tab, the tabs let you switch easily between code, AST, IR, CM Header and everyone else who defines an inspector view for the method)
In 4.0 #272: -> add gtInspectorDecompilerIn: composite <gtInspectorPresentationOrder: 40> ^ composite smalltalkCode title: 'Decompiled'; smalltalkClass: [ self methodClass ]; display: [ self codeForNoSource ]. to CompiledMethod. Result: instant browser for comparing source vs. decompiled vs. AST vs Bytecode. (I inspect âObject methodsâ).
participants (9)
-
Clément Bera -
Craig Latta -
Eliot Miranda -
Esteban Lorenzano -
Henrik Johansen -
Marcus Denker -
Nicolai Hess -
phil@highoctane.be -
stepharo