Updates: Smart underscores & BouncingAtomsMorph performance

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

Updates: Smart underscores & BouncingAtomsMorph performance

Juan Vuletich-4
Hi Folks,

Yesterday and today I pushed new stuff to github. See the attach. Cuis
can now display both underscores and left arrows in the same method!

I also could not help it and worked on BouncingAtomsMorph performance.
It should be close to Squeak now.

Cheers,
Juan Vuletich

_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org

Cuis_underscores.png (75K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

Dan Norton
On 16 Aug 2015 at 12:08, Juan Vuletich wrote:

> Hi Folks,
>
> Yesterday and today I pushed new stuff to github. See the attach.
> Cuis
> can now display both underscores and left arrows in the same
> method!
>
> I also could not help it and worked on BouncingAtomsMorph
> performance.
> It should be close to Squeak now.
>

No, it's faster. Much faster than Squeak in a side-by-side comparison.

 - Dan

_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

Phil B
In reply to this post by Juan Vuletich-4
On Sun, 2015-08-16 at 12:08 -0300, Juan Vuletich wrote:
> Hi Folks,
>
> Yesterday and today I pushed new stuff to github. See the attach. Cuis
> can now display both underscores and left arrows in the same method!
>
> I also could not help it and worked on BouncingAtomsMorph performance.
> It should be close to Squeak now.

It's definitely improved BouncingAtomsMorph (I'm seeing at least 13-17
FPS now.. I say 'at least' because from time to time it jumps up to the
low 20's).  But more importantly (to me, at least) at first glance it
looks like these changes provide an across the board performance boost
to my other Morphic code. (most of my stuff doesn't have FPS counters
but in looking at Morphic CPU utilization in ProcessBrowser, it's almost
always 5-10% lower now)

>
> Cheers,
> Juan Vuletich
> _______________________________________________
> Cuis mailing list
> [hidden email]
> http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org



_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

KenDickey
In reply to this post by Juan Vuletich-4
2461 TaskBar seems to lose collapsed morphs.

World >> New Morph >> <whatever>

Then collapse <whatever>.

Works OK with a Browser.  Leaves space to display the TaskBar buttons, but they do not show up (except for the browser).

Something about Morphs.

??
-KenD


_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
-KenD
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

Dan Norton
Similar observation here, except that browsers, workspaces, and transcripts don't appear; other stuff does appear. However, everything is there in Windows...>find window.

 - Dan
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

Juan Vuletich-4
In reply to this post by Dan Norton
On 8/16/2015 3:02 PM, Dan Norton wrote:

> On 16 Aug 2015 at 12:08, Juan Vuletich wrote:
>
>> Hi Folks,
>>
>> Yesterday and today I pushed new stuff to github. See the attach.
>> Cuis
>> can now display both underscores and left arrows in the same
>> method!
>>
>> I also could not help it and worked on BouncingAtomsMorph
>> performance.
>> It should be close to Squeak now.
>>
> No, it's faster. Much faster than Squeak in a side-by-side comparison.
>
>   - Dan
>

Nice!

Cheers,
Juan Vuletich

_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

Juan Vuletich-4
In reply to this post by Phil B
On 8/16/2015 3:44 PM, Phil (list) wrote:

> On Sun, 2015-08-16 at 12:08 -0300, Juan Vuletich wrote:
>> Hi Folks,
>>
>> Yesterday and today I pushed new stuff to github. See the attach. Cuis
>> can now display both underscores and left arrows in the same method!
>>
>> I also could not help it and worked on BouncingAtomsMorph performance.
>> It should be close to Squeak now.
> It's definitely improved BouncingAtomsMorph (I'm seeing at least 13-17
> FPS now.. I say 'at least' because from time to time it jumps up to the
> low 20's).  But more importantly (to me, at least) at first glance it
> looks like these changes provide an across the board performance boost
> to my other Morphic code. (most of my stuff doesn't have FPS counters
> but in looking at Morphic CPU utilization in ProcessBrowser, it's almost
> always 5-10% lower now)
>

Yes, that sounds reasonable. Most of the code I optimized is quite
general. This example was useful, because it was concrete enough to run
the profiler and get consistent results. It is quite easy to optimize
code if you know _where_ is the problem!

Cheers,
Juan Vuletich

_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

Juan Vuletich-4
In reply to this post by Dan Norton
On 8/17/2015 12:14 PM, Dan Norton wrote:
> Similar observation here, except that browsers, workspaces, and transcripts
> don't appear; other stuff does appear. However, everything is there in
> Windows...>find window.
>
>   - Dan

Yes. I introduced a bug in the recent Morphic optimizations. I fixed it
now. Fortunately, fixed code is both simpler and slightly faster than
the old code.

Cheers,
Juan Vuletich

_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

Juan Vuletich-4
In reply to this post by Juan Vuletich-4
On 8/16/2015 12:08 PM, Juan Vuletich wrote:

> Hi Folks,
>
> Yesterday and today I pushed new stuff to github. See the attach. Cuis
> can now display both underscores and left arrows in the same method!
>
> I also could not help it and worked on BouncingAtomsMorph performance.
> It should be close to Squeak now.
>
> Cheers,
> Juan Vuletich
I'm a bit surprised nobody commented on the attach. I'm quite happy
about not having to give up our traditional assignment symbol, and at
the same time, handle and display correctly underscores in names. These
are sometimes useful when dealing with external code and stuff. I won't
deny it, I'm also a bit proud of the idea to make it possible. Looking
at the screenshot, doesn't it make you think "how the hell did he do it?" ?

Cheers,
Juan Vuletich

_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org

Cuis_underscores.png (75K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

David T. Lewis
> On 8/16/2015 12:08 PM, Juan Vuletich wrote:
>> Hi Folks,
>>
>> Yesterday and today I pushed new stuff to github. See the attach. Cuis
>> can now display both underscores and left arrows in the same method!
>>
>> I also could not help it and worked on BouncingAtomsMorph performance.
>> It should be close to Squeak now.
>>
>> Cheers,
>> Juan Vuletich
>
> I'm a bit surprised nobody commented on the attach. I'm quite happy
> about not having to give up our traditional assignment symbol, and at
> the same time, handle and display correctly underscores in names. These
> are sometimes useful when dealing with external code and stuff. I won't
> deny it, I'm also a bit proud of the idea to make it possible. Looking
> at the screenshot, doesn't it make you think "how the hell did he do it?"
> ?

Well, that's what *I* was wondering. So how did you do that???

:-)

Dave






_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

Phil B
In reply to this post by Juan Vuletich-4
On Mon, 2015-08-17 at 18:04 -0300, Juan Vuletich wrote:

> On 8/16/2015 12:08 PM, Juan Vuletich wrote:
> > Hi Folks,
> >
> > Yesterday and today I pushed new stuff to github. See the attach. Cuis
> > can now display both underscores and left arrows in the same method!
> >
> > I also could not help it and worked on BouncingAtomsMorph performance.
> > It should be close to Squeak now.
> >
> > Cheers,
> > Juan Vuletich
>
> I'm a bit surprised nobody commented on the attach. I'm quite happy
> about not having to give up our traditional assignment symbol, and at
> the same time, handle and display correctly underscores in names. These
> are sometimes useful when dealing with external code and stuff. I won't
> deny it, I'm also a bit proud of the idea to make it possible. Looking
> at the screenshot, doesn't it make you think "how the hell did he do it?" ?
>

You packed too much goodness into one post!  I was so occupied with the
Morphic part, the underscore part didn't even register... very nice job!
This has actually been one of my ongoing issues with the use of arrow
assignments so now I can leave them enabled.  So, how the hell did you
do it? :-)

> Cheers,
> Juan Vuletich
> _______________________________________________
> Cuis mailing list
> [hidden email]
> http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org



_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

Juan Vuletich-4
In reply to this post by David T. Lewis
On 8/17/2015 6:34 PM, David T. Lewis wrote:

>>
>> I'm a bit surprised nobody commented on the attach. I'm quite happy
>> about not having to give up our traditional assignment symbol, and at
>> the same time, handle and display correctly underscores in names. These
>> are sometimes useful when dealing with external code and stuff. I won't
>> deny it, I'm also a bit proud of the idea to make it possible. Looking
>> at the screenshot, doesn't it make you think "how the hell did he do it?"
>> ?
> Well, that's what *I* was wondering. So how did you do that???
>
> :-)
>
> Dave
>

Well, the first idea was that it given that a StrikeFont can already
swap glyphs (#useUnderscores, #useLeftArrow), then it is possible to
build cheap derivative fonts that do that, and TextStyles for them.
Then, Shout parses code and sets TextEmphasis like italics or colors for
differenc code elements. I just made it set a TextEmphasis with
underscores for identifiers.

It is so simple that I find it surprising that nobody (including me)
thought about this years ago!

Cheers,
Juan Vuletich

_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

David T. Lewis
Juan,

I hope you don't mind if I CC squeak-dev.

> On 8/17/2015 6:34 PM, David T. Lewis wrote:
>>>
>>> I'm a bit surprised nobody commented on the attach. I'm quite happy
>>> about not having to give up our traditional assignment symbol, and at
>>> the same time, handle and display correctly underscores in names. These
>>> are sometimes useful when dealing with external code and stuff. I won't
>>> deny it, I'm also a bit proud of the idea to make it possible. Looking
>>> at the screenshot, doesn't it make you think "how the hell did he do
>>> it?"
>>> ?
>> Well, that's what *I* was wondering. So how did you do that???
>>
>> :-)
>>
>> Dave
>>
>
> Well, the first idea was that it given that a StrikeFont can already
> swap glyphs (#useUnderscores, #useLeftArrow), then it is possible to
> build cheap derivative fonts that do that, and TextStyles for them.
> Then, Shout parses code and sets TextEmphasis like italics or colors for
> differenc code elements. I just made it set a TextEmphasis with
> underscores for identifiers.
>
> It is so simple that I find it surprising that nobody (including me)
> thought about this years ago!
>
> Cheers,
> Juan Vuletich
>

What a great idea!

Dave




_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org
Reply | Threaded
Open this post in threaded view
|

Re: Updates: Smart underscores & BouncingAtomsMorph performance

Juan Vuletich-4
Of course not! It would be very nice to see this done in Squeak and
Pharo too.

Cheers,
Juan Vuletich

> Juan,
>
> I hope you don't mind if I CC squeak-dev.
>
> What a great idea!
>
> Dave
>

_______________________________________________
Cuis mailing list
[hidden email]
http://jvuletich.org/mailman/listinfo/cuis_jvuletich.org