Re: [Pharo-dev] The evil twin in 40516

2015-02-28 Thread Marcus Denker
On 27 Feb 2015, at 23:11, Thierry Goubier thierry.goub...@gmail.com wrote: Le 27/02/2015 20:26, Marcus Denker a écrit : On 27 Feb 2015, at 19:48, Thierry Goubier thierry.goub...@gmail.com wrote: Hi Markus, if I understand correctly some of the possibilities: - I can use

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread Marcus Denker
On 27 Feb 2015, at 13:24, kilon alios kilon.al...@gmail.com wrote: I can explain why, its the language you use. For example this feature, I have no clue what you guys are talking about. For people to be impressed first they need to understand what they should be impressed with. I

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread Marcus Denker
On 27 Feb 2015, at 13:59, Clara Allende clari.alle...@gmail.com wrote: Looks super cool :) Now that I finished my exams I can get back on this too... Very good! The idea is to step-by-step take your prototype and move it over. Next I will do the link-setting infrastructure: -

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread kilon alios
I see , I did not realise there is so much negative about Pharo since most people dont seem to be aware of it and the moment they understand what it is they are impressed. At least people I introduced to Pharo. Me too. And the infrastructure is getting really really great. To be point that I

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread kilon alios
so essentially live coding the live coding, wow that sounds impressive indeed. Thanks for taking the time explaining it. I guess this feature will be also very useful for people building DSLs with Pharo. On Fri, Feb 27, 2015 at 5:24 PM, stepharo steph...@free.fr wrote: in essence we can

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread kilon alios
Sooner or later then you will have to name people, because talking generally wont change the situation. Who in this community believe that improving Pharo is pointless / does not have an effect ? I am getting totally opposite feeling with this community. One the reasons I enjoy Pharo. On Fri,

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread Clara Allende
Looks super cool :) Now that I finished my exams I can get back on this too... Thanks a lot Marcus :) 2015-02-27 9:34 GMT-03:00 Marcus Denker marcus.den...@inria.fr: On 27 Feb 2015, at 13:24, kilon alios kilon.al...@gmail.com wrote: I can explain why, its the language you use. For example

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread kilon alios
I can explain why, its the language you use. For example this feature, I have no clue what you guys are talking about. For people to be impressed first they need to understand what they should be impressed with. On Fri, Feb 27, 2015 at 2:12 PM, Marcus Denker marcus.den...@inria.fr wrote: On

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread Clara Allende
Great news! I'll get in touch with you and see how I can help :) 2015-02-27 10:16 GMT-03:00 Marcus Denker marcus.den...@inria.fr: On 27 Feb 2015, at 13:59, Clara Allende clari.alle...@gmail.com wrote: Looks super cool :) Now that I finished my exams I can get back on this too... Very

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread Thierry Goubier
Hi Markus, if I understand correctly some of the possibilities: - I can use RBParseTreeSearcher / RBParseTreeRewriter on the twin AST. (any example how to install / invalidate the twin AST after an effective RBParseTreeRewriter operation?) - Any change to the Twin AST is reflected in the

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread stepharo
in essence we can annotate an AST and the annotations can become live at runtime and can also represents the computation itself. So you can have objects that represent properties of the execution itself and change the execution or something like that :). So with that we can for example build

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread stepharo
I hope that we will get better profilers alex :) Le 27/2/15 00:15, Alexandre Bergel a écrit : Wow!!! This means that one can call #createTwin, modify the AST, and simply call it! Impressive!!! Is it per default in Pharo 40516? Alexandre On Feb 26, 2015, at 8:07 PM, Marcus Denker

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread stepharo
:) pay attention I have a lot of ideas for you to implement :) Stef Le 27/2/15 00:07, Marcus Denker a écrit : Hi, In 40516 there is now a strange, but rather powerful mechanism for CompiledMethod: the Twin. What does that do? you can call on a method #createTwin

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread stepharo
So many cool things! We cannot even imagine at this point what all these little conceptual things will bring in downstream projects. This is amazing. well there are large conceptual things made looking like little conceptual things :) This is the trick but yes we know were we go and I

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread stepharo
Thanks clara. Le 27/2/15 14:24, Clara Allende a écrit : Great news! I'll get in touch with you and see how I can help :) 2015-02-27 10:16 GMT-03:00 Marcus Denker marcus.den...@inria.fr mailto:marcus.den...@inria.fr: On 27 Feb 2015, at 13:59, Clara Allende clari.alle...@gmail.com

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread stepharo
Sooner or later then you will have to name people, because talking generally wont change the situation. Who in this community believe that improving Pharo is pointless / does not have an effect ? marcus is not mentioning people in this community but outside. I am getting totally

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread Marcus Denker
On 27 Feb 2015, at 19:48, Thierry Goubier thierry.goub...@gmail.com wrote: Hi Markus, if I understand correctly some of the possibilities: - I can use RBParseTreeSearcher / RBParseTreeRewriter on the twin AST. (any example how to install / invalidate the twin AST after an effective

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread stepharo
Hi thierry f this implementation follows persephone the bytecode is the result of the first execution of the AST. So a kind of JIT inside the system. The AST is annotated with properties (link to meta objects that can define the semantics of the annotation). Stef Le 27/2/15 19:48, Thierry

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread Thierry Goubier
Le 27/02/2015 20:26, Marcus Denker a écrit : On 27 Feb 2015, at 19:48, Thierry Goubier thierry.goub...@gmail.com wrote: Hi Markus, if I understand correctly some of the possibilities: - I can use RBParseTreeSearcher / RBParseTreeRewriter on the twin AST. (any example how to install /

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread Tudor Girba
So many cool things! We cannot even imagine at this point what all these little conceptual things will bring in downstream projects. This is amazing. Thanks a lot, Doru On Fri, Feb 27, 2015 at 12:07 AM, Marcus Denker marcus.den...@inria.fr wrote: Hi, In 40516 there is now a strange, but

Re: [Pharo-dev] The evil twin in 40516

2015-02-27 Thread Marcus Denker
On Fri, Feb 27, 2015 at 12:35 PM, Tudor Girba tu...@tudorgirba.com wrote: So many cool things! We cannot even imagine at this point what all these little conceptual things will bring in downstream projects. This is amazing. Interestingly, the world view of most people is different... they

Re: [Pharo-dev] The evil twin in 40516

2015-02-26 Thread Johan Fabry
This is excellent! On Feb 26, 2015, at 20:07, Marcus Denker marcus.den...@inria.fr wrote: Hi, In 40516 there is now a strange, but rather powerful mechanism for CompiledMethod: the Twin. What does that do? you can call on a method #createTwin

[Pharo-dev] The evil twin in 40516

2015-02-26 Thread Marcus Denker
Hi, In 40516 there is now a strange, but rather powerful mechanism for CompiledMethod: the Twin. What does that do? you can call on a method #createTwin (ReflectivityExamples#exampleMethod) createTwin. after this, the CompiledMethod has a high-level representation (the AST)

Re: [Pharo-dev] The evil twin in 40516

2015-02-26 Thread Alexandre Bergel
Wow!!! This means that one can call #createTwin, modify the AST, and simply call it! Impressive!!! Is it per default in Pharo 40516? Alexandre On Feb 26, 2015, at 8:07 PM, Marcus Denker marcus.den...@inria.fr wrote: Hi, In 40516 there is now a strange, but rather powerful mechanism for

Re: [Pharo-dev] The evil twin in 40516

2015-02-26 Thread Nicolai Hess
Cool! (spotter does not work on this methods, do we have to change this in the class ReactiveMethod or spotter?)

Re: [Pharo-dev] The evil twin in 40516

2015-02-26 Thread Nicolai Hess
Oh and inspecting the ReflectiveMethod ast with GTInspector has some strange effect 2015-02-27 0:24 GMT+01:00 Nicolai Hess nicolaih...@web.de: Cool! (spotter does not work on this methods, do we have to change this in the class ReactiveMethod or spotter?)

Re: [Pharo-dev] The evil twin in 40516

2015-02-26 Thread Marcus Denker
On 27 Feb 2015, at 00:24, Nicolai Hess nicolaih...@web.de wrote: Cool! (spotter does not work on this methods, do we have to change this in the class ReactiveMethod or spotter?) we need to copy the methods over… Marcus

Re: [Pharo-dev] The evil twin in 40516

2015-02-26 Thread Marcus Denker
On 27 Feb 2015, at 00:15, Alexandre Bergel alexandre.ber...@me.com wrote: Wow!!! This means that one can call #createTwin, modify the AST, and simply call it! Impressive!!! You need to handle invalidation yourself, too. (for now). I want to first concentrate on purely “annotation” based

Re: [Pharo-dev] The evil twin in 40516

2015-02-26 Thread Marcus Denker
On 27 Feb 2015, at 00:26, Marcus Denker marcus.den...@inria.fr wrote: On 27 Feb 2015, at 00:15, Alexandre Bergel alexandre.ber...@me.com wrote: Wow!!! This means that one can call #createTwin, modify the AST, and simply call it! Impressive!!! You need to handle invalidation