Re: [Pharo-dev] Explaining Spec2 and why Bloc is on the roadmap

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

Re: [Pharo-dev] Explaining Spec2 and why Bloc is on the roadmap

Pharo Smalltalk Users mailing list
Hi Stef,

Thanks for this email. Spec 2 really looks great.
It is also great to foresee an integration of Bloc/Brick in Pharo.

Cheers,
Alexandre

> On May 2, 2019, at 5:27 AM, ducasse <[hidden email]> wrote:
>
> Dear Pharoers
>
> We would like to explain what is Spec 2.0 and how Bloc is on the Pharo roadmap.
>
> Spec is a way to support a way to express and reuse application interaction logic.
> Spec was first developed by Benjamin van Ryseghem and others while supervised
> by Stéphane Ducasse.
> Over the years we cleaned Spec, but we never took the time to really revisit it, and Spec
> was never stressed outside the scope of Pharo tools (even if there is some people who
> used it in their projects, this was not the general case). There was a need to deeply rethink
> the way we express and reuse interaction application logic.
>
> Spec 2.0 revisits fundamentally Spec. The consortium wants to acknowledge the strong financial
> support of Schmidt in this new development. Here is a list of points we are working on to support companies
> to build modern applications with Pharo.
>
> - adding support for many widgets and at the same time improving existing widgets such as fasttable
> - adds much better layouts (we will deprecate the interpreter design)
> - introducing a new way to architecture an application:
> Spec20 introduces the notion of application to better handle resources and window flow
> - revisiting the internal logic of Spec (to remove useless parts and enhance the ones that works)
> - adding many tests
>
> In addition we want that Spec 2.0 is not tight anymore with Morphic.
> Why? Because we want to make sure that:
> - companies can deploy desktop applications
> - we can reuse all the tools logic of Pharo with new widgets sets such as Brick (widgets on top of Bloc)
> without having to rewrite everything.
>
> This is why Spec2.0 can optionally render using Gtk3.0. It also means that in the future we can have native widgets.
>
> Now that Bloc/Brick is finally reaching a point where it can be tried and eventually adopted, we want to
> make sure the transition to it will not force us to throw away the tools we developed last ten years.
> We think that Bloc needs some effort to clean and structure it and Spec2.0 gives the time to let Bloc and Brick
> mature. Also, we want to make sure that in the future we will be able to adopt other backends in case we
> decide it (Remember new now is old tomorrow and while Bloc/Brick is new and modern,  it will not remain
> new and modern forever).
>
> Brick needs to be ready for Pharo consumption, and to make it possible we need to move the image to converge.
> With Spec 2.0, in future versions we will just need to define a new backend to get all our tools working.
>
> The Pharo Board
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Explaining Spec2 and why Bloc is on the roadmap

darth-cheney
Stef,

Exciting news all around. Is this s good opportunity to revisit theming? I made a good attempt to wrap my head around themes about a year ago or so, but it's quite complex. If now's not (understandably) the time, how will themes work with this new multiple-backend approach?

On Thu, May 2, 2019 at 11:45 AM Alexandre Bergel via Pharo-users <[hidden email]> wrote:
Hi Stef,

Thanks for this email. Spec 2 really looks great.
It is also great to foresee an integration of Bloc/Brick in Pharo.

Cheers,
Alexandre

> On May 2, 2019, at 5:27 AM, ducasse <[hidden email]> wrote:
>
> Dear Pharoers
>
> We would like to explain what is Spec 2.0 and how Bloc is on the Pharo roadmap.
>
> Spec is a way to support a way to express and reuse application interaction logic.
> Spec was first developed by Benjamin van Ryseghem and others while supervised
> by Stéphane Ducasse.
> Over the years we cleaned Spec, but we never took the time to really revisit it, and Spec
> was never stressed outside the scope of Pharo tools (even if there is some people who
> used it in their projects, this was not the general case). There was a need to deeply rethink
> the way we express and reuse interaction application logic.
>
> Spec 2.0 revisits fundamentally Spec. The consortium wants to acknowledge the strong financial
> support of Schmidt in this new development. Here is a list of points we are working on to support companies
> to build modern applications with Pharo.
>
>       - adding support for many widgets and at the same time improving existing widgets such as fasttable
>       - adds much better layouts (we will deprecate the interpreter design)
>       - introducing a new way to architecture an application:
>       Spec20 introduces the notion of application to better handle resources and window flow
>       - revisiting the internal logic of Spec (to remove useless parts and enhance the ones that works)
>       - adding many tests
>
> In addition we want that Spec 2.0 is not tight anymore with Morphic.
> Why? Because we want to make sure that:
>       - companies can deploy desktop applications
>       - we can reuse all the tools logic of Pharo with new widgets sets such as Brick (widgets on top of Bloc)
>       without having to rewrite everything.
>
> This is why Spec2.0 can optionally render using Gtk3.0. It also means that in the future we can have native widgets.
>
> Now that Bloc/Brick is finally reaching a point where it can be tried and eventually adopted, we want to
> make sure the transition to it will not force us to throw away the tools we developed last ten years.
> We think that Bloc needs some effort to clean and structure it and Spec2.0 gives the time to let Bloc and Brick
> mature. Also, we want to make sure that in the future we will be able to adopt other backends in case we
> decide it (Remember new now is old tomorrow and while Bloc/Brick is new and modern,  it will not remain
> new and modern forever).
>
> Brick needs to be ready for Pharo consumption, and to make it possible we need to move the image to converge.
> With Spec 2.0, in future versions we will just need to define a new backend to get all our tools working.
>
> The Pharo Board
>
>
>




--
Eric