feenk log

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

feenk log

Tudor Girba-2
Hi,

Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
- fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
- a less often but regular (probably every 2 weeks) activity log message sent to this mailing list

Please let us know if you see an issue with this.

In the meantime, let’s start.

Bloc:
- Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
- At the low level, this involved adding matrix and vector support.
https://twitter.com/feenkcom/status/923123870537863168
https://twitter.com/feenkcom/status/916300180848349185
- At a higher level, it implies keeping track of measurements
https://twitter.com/AliakseiSyrel/status/915203525931622400
- And of transformations:
https://twitter.com/feenkcom/status/919603739656417281
https://twitter.com/feenkcom/status/917116164484096001
- The BlScalableElement is now working properly

GT Examples:
- The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
- We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
https://twitter.com/feenkcom/status/923210686204989442
- Andrei made the “after” behavior to work with unary examples.

Cheers,
The feenk team

--
www.tudorgirba.com
www.feenk.com

"Being happy is a matter of choice."





Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Denis Kudriashov
Hi.
Good initiative.

Here is my twitter questions: 
- What the reason to introduce BlVector2D instead of using existing Point?
- How often this vector will be constructed by hands in user code? It is related to my question about comma message: is it really needed?
Now you can evaluate (10, 20)  to get vector instance. And if it is only to simplify scripting and examples then why not use Point for this? As you said point can be converted to vector. 

Best regards,
Denis


2017-10-25 17:53 GMT+02:00 Tudor Girba <[hidden email]>:
Hi,

Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
- fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
- a less often but regular (probably every 2 weeks) activity log message sent to this mailing list

Please let us know if you see an issue with this.

In the meantime, let’s start.

Bloc:
- Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
- At the low level, this involved adding matrix and vector support.
https://twitter.com/feenkcom/status/923123870537863168
https://twitter.com/feenkcom/status/916300180848349185
- At a higher level, it implies keeping track of measurements
https://twitter.com/AliakseiSyrel/status/915203525931622400
- And of transformations:
https://twitter.com/feenkcom/status/919603739656417281
https://twitter.com/feenkcom/status/917116164484096001
- The BlScalableElement is now working properly

GT Examples:
- The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
- We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
https://twitter.com/feenkcom/status/923210686204989442
- Andrei made the “after” behavior to work with unary examples.

Cheers,
The feenk team

--
www.tudorgirba.com
www.feenk.com

"Being happy is a matter of choice."






Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Stephane Ducasse-3
In reply to this post by Tudor Girba-2
Doru using comma for creating vectors is not really because it will
just make the life of type inferencers more difficult.


On Wed, Oct 25, 2017 at 5:53 PM, Tudor Girba <[hidden email]> wrote:

> Hi,
>
> Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
> - fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
> - a less often but regular (probably every 2 weeks) activity log message sent to this mailing list
>
> Please let us know if you see an issue with this.
>
> In the meantime, let’s start.
>
> Bloc:
> - Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
> - At the low level, this involved adding matrix and vector support.
> https://twitter.com/feenkcom/status/923123870537863168
> https://twitter.com/feenkcom/status/916300180848349185
> - At a higher level, it implies keeping track of measurements
> https://twitter.com/AliakseiSyrel/status/915203525931622400
> - And of transformations:
> https://twitter.com/feenkcom/status/919603739656417281
> https://twitter.com/feenkcom/status/917116164484096001
> - The BlScalableElement is now working properly
>
> GT Examples:
> - The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
> - We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
> https://twitter.com/feenkcom/status/923210686204989442
> - Andrei made the “after” behavior to work with unary examples.
>
> Cheers,
> The feenk team
>
> --
> www.tudorgirba.com
> www.feenk.com
>
> "Being happy is a matter of choice."
>
>
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Stephane Ducasse-3
Doru having a few tweets is nice but I do not think that you
communicate well around bloc.

What I would like to get is a roadmap for Bloc V1.0.
- Here are the missing features (documentation),
- Here are where we are.
Because else it feels like Bloc will never ends.
You will argue and tell me that you experiments. But without a feature
list then
people cannot join and do not know when you get a 1.0.

Not measuring is the best way to arrive to a point where you did not wanted.

You see for Brick we need
    Button
    CheckBox
    DropList
    List
    Table
    Pane
    InputField
    Text
    Scrollbar
    Menu
And with that we can get a first Widget set.
But again without a roadmap I have some doubts.

Stef


Stef


On Wed, Oct 25, 2017 at 6:38 PM, Stephane Ducasse
<[hidden email]> wrote:

> Doru using comma for creating vectors is not really because it will
> just make the life of type inferencers more difficult.
>
>
> On Wed, Oct 25, 2017 at 5:53 PM, Tudor Girba <[hidden email]> wrote:
>> Hi,
>>
>> Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
>> - fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
>> - a less often but regular (probably every 2 weeks) activity log message sent to this mailing list
>>
>> Please let us know if you see an issue with this.
>>
>> In the meantime, let’s start.
>>
>> Bloc:
>> - Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
>> - At the low level, this involved adding matrix and vector support.
>> https://twitter.com/feenkcom/status/923123870537863168
>> https://twitter.com/feenkcom/status/916300180848349185
>> - At a higher level, it implies keeping track of measurements
>> https://twitter.com/AliakseiSyrel/status/915203525931622400
>> - And of transformations:
>> https://twitter.com/feenkcom/status/919603739656417281
>> https://twitter.com/feenkcom/status/917116164484096001
>> - The BlScalableElement is now working properly
>>
>> GT Examples:
>> - The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
>> - We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
>> https://twitter.com/feenkcom/status/923210686204989442
>> - Andrei made the “after” behavior to work with unary examples.
>>
>> Cheers,
>> The feenk team
>>
>> --
>> www.tudorgirba.com
>> www.feenk.com
>>
>> "Being happy is a matter of choice."
>>
>>
>>
>>
>>

Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Stephane Ducasse-3
Personally (10, 20) for a vector is not really nice and I would really
like to have a discussion before.


On Wed, Oct 25, 2017 at 6:45 PM, Stephane Ducasse
<[hidden email]> wrote:

> Doru having a few tweets is nice but I do not think that you
> communicate well around bloc.
>
> What I would like to get is a roadmap for Bloc V1.0.
> - Here are the missing features (documentation),
> - Here are where we are.
> Because else it feels like Bloc will never ends.
> You will argue and tell me that you experiments. But without a feature
> list then
> people cannot join and do not know when you get a 1.0.
>
> Not measuring is the best way to arrive to a point where you did not wanted.
>
> You see for Brick we need
>     Button
>     CheckBox
>     DropList
>     List
>     Table
>     Pane
>     InputField
>     Text
>     Scrollbar
>     Menu
> And with that we can get a first Widget set.
> But again without a roadmap I have some doubts.
>
> Stef
>
>
> Stef
>
>
> On Wed, Oct 25, 2017 at 6:38 PM, Stephane Ducasse
> <[hidden email]> wrote:
>> Doru using comma for creating vectors is not really because it will
>> just make the life of type inferencers more difficult.
>>
>>
>> On Wed, Oct 25, 2017 at 5:53 PM, Tudor Girba <[hidden email]> wrote:
>>> Hi,
>>>
>>> Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
>>> - fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
>>> - a less often but regular (probably every 2 weeks) activity log message sent to this mailing list
>>>
>>> Please let us know if you see an issue with this.
>>>
>>> In the meantime, let’s start.
>>>
>>> Bloc:
>>> - Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
>>> - At the low level, this involved adding matrix and vector support.
>>> https://twitter.com/feenkcom/status/923123870537863168
>>> https://twitter.com/feenkcom/status/916300180848349185
>>> - At a higher level, it implies keeping track of measurements
>>> https://twitter.com/AliakseiSyrel/status/915203525931622400
>>> - And of transformations:
>>> https://twitter.com/feenkcom/status/919603739656417281
>>> https://twitter.com/feenkcom/status/917116164484096001
>>> - The BlScalableElement is now working properly
>>>
>>> GT Examples:
>>> - The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
>>> - We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
>>> https://twitter.com/feenkcom/status/923210686204989442
>>> - Andrei made the “after” behavior to work with unary examples.
>>>
>>> Cheers,
>>> The feenk team
>>>
>>> --
>>> www.tudorgirba.com
>>> www.feenk.com
>>>
>>> "Being happy is a matter of choice."
>>>
>>>
>>>
>>>
>>>

Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Aliaksei Syrel
In reply to this post by Stephane Ducasse-3
Hi Denis,

The reason for BlVector2D is that we also have BlVector3D.
In case of translation a Point (x@y) should be converted to (x,y,0). For scale it is converted as (x,y,1). You see, the same Point object has different meanings when it comes to different transformations.

Additionally, Point does not represent the intent correctly because all affine transformations involve vectors. Of course, we made Vectors polymorphic with points, so users can write:
element translateBy: (20@20) instead of element translateBy: (BlVector x: 20 y: 20).

- How often this vector will be constructed by hands in user code? It is related to my question about comma message: is it really needed?

In lineare algebra vectors are represented as (x, y, z).  Beautiful!

Cheers,
Alex
Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Aliaksei Syrel
Hi Stef,

In this email I will enumerate what features are missing that we are aware of. The problem is that we discover what we need spontaneously during experiments and not beforehand :)

Missing / broken
 - error handling library. If there is an exception during event handling or rendering, Bloc's UI thread stops and we have to reset the universe. Sometimes errors cause "infinite" spawn of debuggers.
 - transformations (scale, translate, rotate) animations don't work now, because I still need to finish interpolation of matrix decomposition.
 - there is a bug with drawing invalidation when element has rotation transformation.
 - gradient backgrounds can only have fixed size (origin/corner) and can not scale according to element's size.
 - event propagation mechanism should be implemented on top of Announcer and not using our custom one (there was a discussion about this on dev mailing list)
 - Sparta/Cairo backend has not implemented fill path with image pattern API method
 - FFI Callbacks crash VM on windows (I have my own FFI-only tests that fail)
 - FFI external array can not handle booleans:

array := FFIExternalArray externalNewType: 'bool' size: 1. array at: 1 put: true. array at: 1 "false"

More minor issues can be found on Bloc's github page https://github.com/pharo-graphics/Bloc/issues

That is all from my side :)

Cheers,
Alex

On 25 October 2017 at 18:48, Aliaksei Syrel <[hidden email]> wrote:
Hi Denis,

The reason for BlVector2D is that we also have BlVector3D.
In case of translation a Point (x@y) should be converted to (x,y,0). For scale it is converted as (x,y,1). You see, the same Point object has different meanings when it comes to different transformations.

Additionally, Point does not represent the intent correctly because all affine transformations involve vectors. Of course, we made Vectors polymorphic with points, so users can write:
element translateBy: (20@20) instead of element translateBy: (BlVector x: 20 y: 20).

- How often this vector will be constructed by hands in user code? It is related to my question about comma message: is it really needed?

In lineare algebra vectors are represented as (x, y, z).  Beautiful!

Cheers,
Alex

Reply | Threaded
Open this post in threaded view
|

Re: feenk log

abergel
In reply to this post by Stephane Ducasse-3
> Personally (10, 20) for a vector is not really nice and I would really
> like to have a discussion before.

+1 !!!!

The Pharo syntax should remain an asset, not become a trap.

Alexandre

>
>
> On Wed, Oct 25, 2017 at 6:45 PM, Stephane Ducasse
> <[hidden email]> wrote:
>> Doru having a few tweets is nice but I do not think that you
>> communicate well around bloc.
>>
>> What I would like to get is a roadmap for Bloc V1.0.
>> - Here are the missing features (documentation),
>> - Here are where we are.
>> Because else it feels like Bloc will never ends.
>> You will argue and tell me that you experiments. But without a feature
>> list then
>> people cannot join and do not know when you get a 1.0.
>>
>> Not measuring is the best way to arrive to a point where you did not wanted.
>>
>> You see for Brick we need
>>    Button
>>    CheckBox
>>    DropList
>>    List
>>    Table
>>    Pane
>>    InputField
>>    Text
>>    Scrollbar
>>    Menu
>> And with that we can get a first Widget set.
>> But again without a roadmap I have some doubts.
>>
>> Stef
>>
>>
>> Stef
>>
>>
>> On Wed, Oct 25, 2017 at 6:38 PM, Stephane Ducasse
>> <[hidden email]> wrote:
>>> Doru using comma for creating vectors is not really because it will
>>> just make the life of type inferencers more difficult.
>>>
>>>
>>> On Wed, Oct 25, 2017 at 5:53 PM, Tudor Girba <[hidden email]> wrote:
>>>> Hi,
>>>>
>>>> Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
>>>> - fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
>>>> - a less often but regular (probably every 2 weeks) activity log message sent to this mailing list
>>>>
>>>> Please let us know if you see an issue with this.
>>>>
>>>> In the meantime, let’s start.
>>>>
>>>> Bloc:
>>>> - Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
>>>> - At the low level, this involved adding matrix and vector support.
>>>> https://twitter.com/feenkcom/status/923123870537863168
>>>> https://twitter.com/feenkcom/status/916300180848349185
>>>> - At a higher level, it implies keeping track of measurements
>>>> https://twitter.com/AliakseiSyrel/status/915203525931622400
>>>> - And of transformations:
>>>> https://twitter.com/feenkcom/status/919603739656417281
>>>> https://twitter.com/feenkcom/status/917116164484096001
>>>> - The BlScalableElement is now working properly
>>>>
>>>> GT Examples:
>>>> - The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
>>>> - We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
>>>> https://twitter.com/feenkcom/status/923210686204989442
>>>> - Andrei made the “after” behavior to work with unary examples.
>>>>
>>>> Cheers,
>>>> The feenk team
>>>>
>>>> --
>>>> www.tudorgirba.com
>>>> www.feenk.com
>>>>
>>>> "Being happy is a matter of choice."
>>>>
>>>>
>>>>
>>>>
>>>>
>


Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Tudor Girba-2
In reply to this post by Stephane Ducasse-3
Hi Stef,

The log is not a replacement of the roadmap. It is only to help people see what we do live.

The roadmap and documentation are coming as well, but these are separate.

Cheers,
Doru


> On Oct 25, 2017, at 6:45 PM, Stephane Ducasse <[hidden email]> wrote:
>
> Doru having a few tweets is nice but I do not think that you
> communicate well around bloc.
>
> What I would like to get is a roadmap for Bloc V1.0.
> - Here are the missing features (documentation),
> - Here are where we are.
> Because else it feels like Bloc will never ends.
> You will argue and tell me that you experiments. But without a feature
> list then
> people cannot join and do not know when you get a 1.0.
>
> Not measuring is the best way to arrive to a point where you did not wanted.
>
> You see for Brick we need
>    Button
>    CheckBox
>    DropList
>    List
>    Table
>    Pane
>    InputField
>    Text
>    Scrollbar
>    Menu
> And with that we can get a first Widget set.
> But again without a roadmap I have some doubts.
>
> Stef
>
>
> Stef
>
>
> On Wed, Oct 25, 2017 at 6:38 PM, Stephane Ducasse
> <[hidden email]> wrote:
>> Doru using comma for creating vectors is not really because it will
>> just make the life of type inferencers more difficult.
>>
>>
>> On Wed, Oct 25, 2017 at 5:53 PM, Tudor Girba <[hidden email]> wrote:
>>> Hi,
>>>
>>> Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
>>> - fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
>>> - a less often but regular (probably every 2 weeks) activity log message sent to this mailing list
>>>
>>> Please let us know if you see an issue with this.
>>>
>>> In the meantime, let’s start.
>>>
>>> Bloc:
>>> - Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
>>> - At the low level, this involved adding matrix and vector support.
>>> https://twitter.com/feenkcom/status/923123870537863168
>>> https://twitter.com/feenkcom/status/916300180848349185
>>> - At a higher level, it implies keeping track of measurements
>>> https://twitter.com/AliakseiSyrel/status/915203525931622400
>>> - And of transformations:
>>> https://twitter.com/feenkcom/status/919603739656417281
>>> https://twitter.com/feenkcom/status/917116164484096001
>>> - The BlScalableElement is now working properly
>>>
>>> GT Examples:
>>> - The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
>>> - We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
>>> https://twitter.com/feenkcom/status/923210686204989442
>>> - Andrei made the “after” behavior to work with unary examples.
>>>
>>> Cheers,
>>> The feenk team
>>>
>>> --
>>> www.tudorgirba.com
>>> www.feenk.com
>>>
>>> "Being happy is a matter of choice."
>>>
>>>
>>>
>>>
>>>
>

--
www.tudorgirba.com
www.feenk.com

"What we can governs what we wish."





Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Tudor Girba-2
In reply to this post by abergel
Hi,

That is the point of making fine grained things explicit: to have the chance to disagree and discuss :).

I will spawn a separate thread.

Doru


> On Oct 25, 2017, at 7:42 PM, Alexandre Bergel <[hidden email]> wrote:
>
>> Personally (10, 20) for a vector is not really nice and I would really
>> like to have a discussion before.
>
> +1 !!!!
>
> The Pharo syntax should remain an asset, not become a trap.
>
> Alexandre
>
>>
>>
>> On Wed, Oct 25, 2017 at 6:45 PM, Stephane Ducasse
>> <[hidden email]> wrote:
>>> Doru having a few tweets is nice but I do not think that you
>>> communicate well around bloc.
>>>
>>> What I would like to get is a roadmap for Bloc V1.0.
>>> - Here are the missing features (documentation),
>>> - Here are where we are.
>>> Because else it feels like Bloc will never ends.
>>> You will argue and tell me that you experiments. But without a feature
>>> list then
>>> people cannot join and do not know when you get a 1.0.
>>>
>>> Not measuring is the best way to arrive to a point where you did not wanted.
>>>
>>> You see for Brick we need
>>>   Button
>>>   CheckBox
>>>   DropList
>>>   List
>>>   Table
>>>   Pane
>>>   InputField
>>>   Text
>>>   Scrollbar
>>>   Menu
>>> And with that we can get a first Widget set.
>>> But again without a roadmap I have some doubts.
>>>
>>> Stef
>>>
>>>
>>> Stef
>>>
>>>
>>> On Wed, Oct 25, 2017 at 6:38 PM, Stephane Ducasse
>>> <[hidden email]> wrote:
>>>> Doru using comma for creating vectors is not really because it will
>>>> just make the life of type inferencers more difficult.
>>>>
>>>>
>>>> On Wed, Oct 25, 2017 at 5:53 PM, Tudor Girba <[hidden email]> wrote:
>>>>> Hi,
>>>>>
>>>>> Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
>>>>> - fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
>>>>> - a less often but regular (probably every 2 weeks) activity log message sent to this mailing list
>>>>>
>>>>> Please let us know if you see an issue with this.
>>>>>
>>>>> In the meantime, let’s start.
>>>>>
>>>>> Bloc:
>>>>> - Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
>>>>> - At the low level, this involved adding matrix and vector support.
>>>>> https://twitter.com/feenkcom/status/923123870537863168
>>>>> https://twitter.com/feenkcom/status/916300180848349185
>>>>> - At a higher level, it implies keeping track of measurements
>>>>> https://twitter.com/AliakseiSyrel/status/915203525931622400
>>>>> - And of transformations:
>>>>> https://twitter.com/feenkcom/status/919603739656417281
>>>>> https://twitter.com/feenkcom/status/917116164484096001
>>>>> - The BlScalableElement is now working properly
>>>>>
>>>>> GT Examples:
>>>>> - The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
>>>>> - We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
>>>>> https://twitter.com/feenkcom/status/923210686204989442
>>>>> - Andrei made the “after” behavior to work with unary examples.
>>>>>
>>>>> Cheers,
>>>>> The feenk team
>>>>>
>>>>> --
>>>>> www.tudorgirba.com
>>>>> www.feenk.com
>>>>>
>>>>> "Being happy is a matter of choice."
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>
>
>

--
www.tudorgirba.com
www.feenk.com

"Don't give to get. Just give."







Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Sean P. DeNigris
Administrator
In reply to this post by Denis Kudriashov
Denis Kudriashov wrote
> Good initiative.

+1 :)


Denis Kudriashov wrote
> Here is my twitter questions:…

Mine are:
1. Is it possible/easy/smooth to zoom in/out?
2. Is there an equivalent to Morphic-stepping?



-----
Cheers,
Sean
--
Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html

Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Tudor Girba-2
Hi,

> On Oct 25, 2017, at 8:11 PM, Sean P. DeNigris <[hidden email]> wrote:
>
> Denis Kudriashov wrote
>> Good initiative.
>
> +1 :)
>
>
> Denis Kudriashov wrote
>> Here is my twitter questions:…
>
> Mine are:
> 1. Is it possible/easy/smooth to zoom in/out?

We now have BlScalableElement which handles the zooming. The next thing is to attach animations to it.

> 2. Is there an equivalent to Morphic-stepping?

Yes, but this is achieved by attaching an animation to the element.

However, right now, due to changes in transformations, animations are not working. They should be back soon.

Cheers,
Doru

>
>
> -----
> Cheers,
> Sean
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
>

--
www.tudorgirba.com
www.feenk.com

"Reasonable is what we are accustomed with."


Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Denis Kudriashov
2017-10-25 22:00 GMT+02:00 Tudor Girba <[hidden email]>:
Hi,

> On Oct 25, 2017, at 8:11 PM, Sean P. DeNigris <[hidden email]> wrote:
>
> Denis Kudriashov wrote
>> Good initiative.
>
> +1 :)
>
>
> Denis Kudriashov wrote
>> Here is my twitter questions:…
>
> Mine are:
> 1. Is it possible/easy/smooth to zoom in/out?

We now have BlScalableElement which handles the zooming. The next thing is to attach animations to it.

I expected that any element can be scalable because transformation is part of it. Am I wrong?. 
Then what the purpose of this subclass? Is it for convenience or there is some important logic inside?
 

> 2. Is there an equivalent to Morphic-stepping?

Yes, but this is achieved by attaching an animation to the element.

However, right now, due to changes in transformations, animations are not working. They should be back soon.

Cheers,
Doru

>
>
> -----
> Cheers,
> Sean
> --
> Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
>

--
www.tudorgirba.com
www.feenk.com

"Reasonable is what we are accustomed with."



Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Stephane Ducasse-3
In reply to this post by Tudor Girba-2
Ok :)

Stef

On Wed, Oct 25, 2017 at 7:58 PM, Tudor Girba <[hidden email]> wrote:

> Hi Stef,
>
> The log is not a replacement of the roadmap. It is only to help people see what we do live.
>
> The roadmap and documentation are coming as well, but these are separate.
>
> Cheers,
> Doru
>
>
>> On Oct 25, 2017, at 6:45 PM, Stephane Ducasse <[hidden email]> wrote:
>>
>> Doru having a few tweets is nice but I do not think that you
>> communicate well around bloc.
>>
>> What I would like to get is a roadmap for Bloc V1.0.
>> - Here are the missing features (documentation),
>> - Here are where we are.
>> Because else it feels like Bloc will never ends.
>> You will argue and tell me that you experiments. But without a feature
>> list then
>> people cannot join and do not know when you get a 1.0.
>>
>> Not measuring is the best way to arrive to a point where you did not wanted.
>>
>> You see for Brick we need
>>    Button
>>    CheckBox
>>    DropList
>>    List
>>    Table
>>    Pane
>>    InputField
>>    Text
>>    Scrollbar
>>    Menu
>> And with that we can get a first Widget set.
>> But again without a roadmap I have some doubts.
>>
>> Stef
>>
>>
>> Stef
>>
>>
>> On Wed, Oct 25, 2017 at 6:38 PM, Stephane Ducasse
>> <[hidden email]> wrote:
>>> Doru using comma for creating vectors is not really because it will
>>> just make the life of type inferencers more difficult.
>>>
>>>
>>> On Wed, Oct 25, 2017 at 5:53 PM, Tudor Girba <[hidden email]> wrote:
>>>> Hi,
>>>>
>>>> Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
>>>> - fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
>>>> - a less often but regular (probably every 2 weeks) activity log message sent to this mailing list
>>>>
>>>> Please let us know if you see an issue with this.
>>>>
>>>> In the meantime, let’s start.
>>>>
>>>> Bloc:
>>>> - Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
>>>> - At the low level, this involved adding matrix and vector support.
>>>> https://twitter.com/feenkcom/status/923123870537863168
>>>> https://twitter.com/feenkcom/status/916300180848349185
>>>> - At a higher level, it implies keeping track of measurements
>>>> https://twitter.com/AliakseiSyrel/status/915203525931622400
>>>> - And of transformations:
>>>> https://twitter.com/feenkcom/status/919603739656417281
>>>> https://twitter.com/feenkcom/status/917116164484096001
>>>> - The BlScalableElement is now working properly
>>>>
>>>> GT Examples:
>>>> - The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
>>>> - We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
>>>> https://twitter.com/feenkcom/status/923210686204989442
>>>> - Andrei made the “after” behavior to work with unary examples.
>>>>
>>>> Cheers,
>>>> The feenk team
>>>>
>>>> --
>>>> www.tudorgirba.com
>>>> www.feenk.com
>>>>
>>>> "Being happy is a matter of choice."
>>>>
>>>>
>>>>
>>>>
>>>>
>>
>
> --
> www.tudorgirba.com
> www.feenk.com
>
> "What we can governs what we wish."
>
>
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Stephane Ducasse-3
In reply to this post by Aliaksei Syrel
On Wed, Oct 25, 2017 at 7:04 PM, Aliaksei Syrel <[hidden email]> wrote:
> Hi Stef,
>
> In this email I will enumerate what features are missing that we are aware
> of. The problem is that we discover what we need spontaneously during
> experiments and not beforehand :)

Yes for the extras problems but you always have an idea of the base.

>
> Missing / broken
>  - error handling library. If there is an exception during event handling or
> rendering, Bloc's UI thread stops and we have to reset the universe.

I was wondering if the use of on:fork: would not help there.

> Sometimes errors cause "infinite" spawn of debuggers.
>  - transformations (scale, translate, rotate) animations don't work now,
> because I still need to finish interpolation of matrix decomposition.
>  - there is a bug with drawing invalidation when element has rotation
> transformation.
>  - gradient backgrounds can only have fixed size (origin/corner) and can not
> scale according to element's size.
>  - event propagation mechanism should be implemented on top of Announcer and
> not using our custom one (there was a discussion about this on dev mailing
> list)
Ok you mean what glenn did. Ok sounds good. For me I would like to
have less concepts or similar libraries.

>  - Sparta/Cairo backend has not implemented fill path with image pattern API
> method
>  - FFI Callbacks crash VM on windows (I have my own FFI-only tests that
> fail)
>  - FFI external array can not handle booleans:
>
> array := FFIExternalArray externalNewType: 'bool' size: 1. array at: 1 put:
> true. array at: 1 "false"
>
> More minor issues can be found on Bloc's github page
> https://github.com/pharo-graphics/Bloc/issues
>
> That is all from my side :)

Ok so this is reasonable.
I would add for version 1.0
Nice class comments


> Cheers,
> Alex
>
> On 25 October 2017 at 18:48, Aliaksei Syrel <[hidden email]> wrote:
>>
>> Hi Denis,
>>
>> The reason for BlVector2D is that we also have BlVector3D.
>> In case of translation a Point (x@y) should be converted to (x,y,0). For
>> scale it is converted as (x,y,1). You see, the same Point object has
>> different meanings when it comes to different transformations.
>>
>> Additionally, Point does not represent the intent correctly because all
>> affine transformations involve vectors. Of course, we made Vectors
>> polymorphic with points, so users can write:
>> element translateBy: (20@20) instead of element translateBy: (BlVector x:
>> 20 y: 20).
>>
>>> - How often this vector will be constructed by hands in user code? It is
>>> related to my question about comma message: is it really needed?
>>
>>
>> In lineare algebra vectors are represented as (x, y, z).  Beautiful!
>>
>> Cheers,
>> Alex
>
>

Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Sean P. DeNigris
Administrator
In reply to this post by Tudor Girba-2
Tudor Girba-2 wrote
> We now have BlScalableElement which handles the zooming

Gotcha. So an entire "World" (I'm assuming that's a Bloc Space?) can be
zoomed in and out?



-----
Cheers,
Sean
--
Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html

Cheers,
Sean
Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Clément Béra
In reply to this post by Tudor Girba-2
Hi,

Good work,

In PolyMaths/SciSmalltalk vectors and matrix are already implemented efficiently. I would recommend to share the same implementation. In the next few years, I think we will improve the performance of those vectors/matrix library using the processor vector instructions, and it would be nice if we have to improve one but not two libraries of vectors and matrix (This is the polie way of saying I am going to improve one library and the others will have to do it themselves).

Regards,

On Wed, Oct 25, 2017 at 5:53 PM, Tudor Girba <[hidden email]> wrote:
Hi,

Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
- fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
- a less often but regular (probably every 2 weeks) activity log message sent to this mailing list

Please let us know if you see an issue with this.

In the meantime, let’s start.

Bloc:
- Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
- At the low level, this involved adding matrix and vector support.
https://twitter.com/feenkcom/status/923123870537863168
https://twitter.com/feenkcom/status/916300180848349185
- At a higher level, it implies keeping track of measurements
https://twitter.com/AliakseiSyrel/status/915203525931622400
- And of transformations:
https://twitter.com/feenkcom/status/919603739656417281
https://twitter.com/feenkcom/status/917116164484096001
- The BlScalableElement is now working properly

GT Examples:
- The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
- We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
https://twitter.com/feenkcom/status/923210686204989442
- Andrei made the “after” behavior to work with unary examples.

Cheers,
The feenk team

--
www.tudorgirba.com
www.feenk.com

"Being happy is a matter of choice."








--
Clément Béra
Pharo consortium engineer
Bâtiment B 40, avenue Halley 59650 Villeneuve d'Ascq
Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Tudor Girba-2
Hi Clément,

I did not know that you had an interest in optimizing vector and matrix operations. Awesome!

We definitely want to take a look at synergies. These low level things are needed for Bloc, but they definitely do not have to be in Bloc.

Doru


> On Oct 26, 2017, at 8:15 AM, Clément Bera <[hidden email]> wrote:
>
> Hi,
>
> Good work,
>
> In PolyMaths/SciSmalltalk vectors and matrix are already implemented efficiently. I would recommend to share the same implementation. In the next few years, I think we will improve the performance of those vectors/matrix library using the processor vector instructions, and it would be nice if we have to improve one but not two libraries of vectors and matrix (This is the polie way of saying I am going to improve one library and the others will have to do it themselves).
>
> Regards,
>
> On Wed, Oct 25, 2017 at 5:53 PM, Tudor Girba <[hidden email]> wrote:
> Hi,
>
> Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
> - fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
> - a less often but regular (probably every 2 weeks) activity log message sent to this mailing list
>
> Please let us know if you see an issue with this.
>
> In the meantime, let’s start.
>
> Bloc:
> - Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
> - At the low level, this involved adding matrix and vector support.
> https://twitter.com/feenkcom/status/923123870537863168
> https://twitter.com/feenkcom/status/916300180848349185
> - At a higher level, it implies keeping track of measurements
> https://twitter.com/AliakseiSyrel/status/915203525931622400
> - And of transformations:
> https://twitter.com/feenkcom/status/919603739656417281
> https://twitter.com/feenkcom/status/917116164484096001
> - The BlScalableElement is now working properly
>
> GT Examples:
> - The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
> - We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
> https://twitter.com/feenkcom/status/923210686204989442
> - Andrei made the “after” behavior to work with unary examples.
>
> Cheers,
> The feenk team
>
> --
> www.tudorgirba.com
> www.feenk.com
>
> "Being happy is a matter of choice."
>
>
>
>
>
>
>
>
> --
> Clément Béra
> Pharo consortium engineer
> https://clementbera.wordpress.com/
> Bâtiment B 40, avenue Halley 59650 Villeneuve d'Ascq

--
www.tudorgirba.com
www.feenk.com

"To lead is not to demand things, it is to make them happen."





Reply | Threaded
Open this post in threaded view
|

Re: feenk log

wernerk
Hi Doru,
you say BLVector is implemented as having instance vars x,y instead of
using an Array (like polymath), i guess perhaps because of speed
considerations? but i wonder why you then dont use FloatArrays for
vectors, their precision, although generally bad, is sufficient for
graphics and they are faster for vector operations?
werner

Reply | Threaded
Open this post in threaded view
|

Re: feenk log

Ben Coman
In reply to this post by Clément Béra


On Thu, Oct 26, 2017 at 2:15 PM, Clément Bera <[hidden email]> wrote:
Hi,

Good work,

In PolyMaths/SciSmalltalk vectors and matrix are already implemented efficiently. I would recommend to share the same implementation.

By this, you mean move the "base" vector/matrix objects from there into Pharo?  This makes a lot of sense.  These are applicable to a lot of applications, and having them in-Image obviously helps focus efforts and reuse.  These could just have the minimal methods required by Bloc, with PolyMaths/SciSmalltalk extending them with more exotic operations.
 
In the next few years, I think we will improve the performance of those vectors/matrix library using the processor vector instructions, and it would be nice if we have to improve one but not two libraries of vectors and matrix (This is the polite way of saying I am going to improve one library and the others will have to do it themselves).

Regards,

On Wed, Oct 25, 2017 at 5:53 PM, Tudor Girba <[hidden email]> wrote:
Hi,

Our team is working on a couple of projects that are relevant for the core of Pharo, namely GT and Bloc/Brick. At ESUG we were asked by several people, and Stef in particular, to make the progress on these projects more transparent. To this end, we will start two streams of signals:
- fine grained info bits on out Twitter account (several times a week): https://twitter.com/feenkcom
- a less often but regular (probably every 2 weeks) activity log message sent to this mailing list

Please let us know if you see an issue with this.

Good initiative, and already getting to useful collaboration.

btw, I know sharing opens up to nit picking that can be discouraging, as we've seen other tools you've introduced in the past get a bit of a beating at the transition stage - but your vision and good work has borne through and now these are tools we now can't live without!   So keep up the good work. 

cheers -ben
 

In the meantime, let’s start.

Bloc:
- Over the past couple of weeks Alex worked on transformations and measurements in the core system. It turns out that there was room for quite a number of performance optimizations and for making the system more debuggable.
- At the low level, this involved adding matrix and vector support.
https://twitter.com/feenkcom/status/923123870537863168
https://twitter.com/feenkcom/status/916300180848349185
- At a higher level, it implies keeping track of measurements
https://twitter.com/AliakseiSyrel/status/915203525931622400
- And of transformations:
https://twitter.com/feenkcom/status/919603739656417281
https://twitter.com/feenkcom/status/917116164484096001
- The BlScalableElement is now working properly

GT Examples:
- The current repository with unary-based examples is at: https://github.com/feenkcom/gtoolkit-examples
- We now have a runner in the inspector that allows us to both see the source code and run and play with the resulting object:
https://twitter.com/feenkcom/status/923210686204989442
- Andrei made the “after” behavior to work with unary examples.

Cheers,
The feenk team

--
www.tudorgirba.com
www.feenk.com

"Being happy is a matter of choice."
+1

12