<Social Media Marketing>
The following interesting question/thread could use some more comments/votes: Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News > https://news.ycombinator.com/item?id=12185892 <https://news.ycombinator.com/item?id=12185892> Sven |
Hi Sven, I'd put RB + SmaCC among the lot. But I consider that really non-trivial : the pattern language of RB (and the underlying pattern matching and unification algorithm) is top notch, and how SmaCC builds on RB to virtually generate code / optimise code / then compile is nothing short of amazing. SmaCC comes with a pattern matching/unification algorithm over ASTs + auto-generation of AST code + visitor + tree equality + the equivalent of Flex/Bison(*) + a GUI in 11401 lines of code. Thierry (*) And a true equivalent, with LR, LALR and GLR ! 2016-07-29 14:05 GMT+02:00 Sven Van Caekenberghe <[hidden email]>: <Social Media Marketing> |
On Fri, Jul 29, 2016 at 2:23 PM, Thierry Goubier
<[hidden email]> wrote: > Hi Sven, > > I'd put RB + SmaCC among the lot. But I consider that really non-trivial : > the pattern language of RB (and the underlying pattern matching and > unification algorithm) is top notch, and how SmaCC builds on RB to virtually > generate code / optimise code / then compile is nothing short of amazing. > > SmaCC comes with a pattern matching/unification algorithm over ASTs + > auto-generation of AST code + visitor + tree equality + the equivalent of > Flex/Bison(*) + a GUI in 11401 lines of code. SmaCC deserves definitively more advertisements and should be added to MOOSE platform I think. When I see all the buzz around languages workbenches like Rascal: https://www.youtube.com/watch?v=Ffx7VtEOSx4 with MOOSE+RB+SmaCC+Reflectivity+GTools we are close to these tools (or even better). Regards, -- Serge Stinckwich UCBN & UMI UMMISCO 209 (IRD/UPMC) Every DSL ends up being Smalltalk http://www.doesnotunderstand.org/ |
In reply to this post by Thierry Goubier
> On 29 Jul 2016, at 14:23, Thierry Goubier <[hidden email]> wrote: > > Hi Sven, > > I'd put RB + SmaCC among the lot. But I consider that really non-trivial : the pattern language of RB (and the underlying pattern matching and unification algorithm) is top notch, and how SmaCC builds on RB to virtually generate code / optimise code / then compile is nothing short of amazing. > > SmaCC comes with a pattern matching/unification algorithm over ASTs + auto-generation of AST code + visitor + tree equality + the equivalent of Flex/Bison(*) + a GUI in 11401 lines of code. Well, you don't need to convince me that there is some really magic code out there, thanks for pointing this out. People should really do more effort to promote the stuff they like, by writing some nice accessible article about it. (Hint, hint). The problem is that even though Smalltalk itself is simple, the whole environment, being super dynamic/flexible, is not. It scares a lot of people that they cannot really grab and hold the code. It is only once you get beyond that initial hurdle (which also requires you to unlearn/learn a new approach), that you can start to explore and appreciate all the good stuff. I am still not sure how we can make this clear to newcomers, but it feels like a critical step. > Thierry > > (*) And a true equivalent, with LR, LALR and GLR ! > > 2016-07-29 14:05 GMT+02:00 Sven Van Caekenberghe <[hidden email]>: > <Social Media Marketing> > > The following interesting question/thread could use some more comments/votes: > > Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News > > > https://news.ycombinator.com/item?id=12185892 <https://news.ycombinator.com/item?id=12185892> > > Sven > |
2016-07-29 15:32 GMT+02:00 Sven Van Caekenberghe <[hidden email]>:
Understood :) The problem is that even though Smalltalk itself is simple, the whole environment, being super dynamic/flexible, is not. It scares a lot of people that they cannot really grab and hold the code. It is only once you get beyond that initial hurdle (which also requires you to unlearn/learn a new approach), that you can start to explore and appreciate all the good stuff. I am still not sure how we can make this clear to newcomers, but it feels like a critical step. Maybe there is a question of coding style coupled with the tools? Thierry
|
In reply to this post by SergeStinckwich
I was at that talk, and I am not convinced that we are at that level, we are certainly not better in my opinion. The advantage that they have is the domain-specific language on top of the parsing infrastructure which makes it easy and fast to write (at least) the demos he is showing. We don’t have that and his talk showed me that it is an important thing that is missing. -- Does this mail seem too brief? Sorry for that, I don’t mean to be rude! Please see http://emailcharter.org . Johan Fabry - http://pleiad.cl/~jfabry PLEIAD and RyCh labs - Computer Science Department (DCC) - University of Chile > On Jul 29, 2016, at 08:38, Serge Stinckwich <[hidden email]> wrote: > > When I see all the buzz around languages workbenches like Rascal: > https://www.youtube.com/watch?v=Ffx7VtEOSx4 > > with MOOSE+RB+SmaCC+Reflectivity+GTools we are close to these tools > (or even better). |
In reply to this post by Sven Van Caekenberghe-2
On Fri, Jul 29, 2016 at 3:32 PM, Sven Van Caekenberghe <[hidden email]> wrote:
> >> On 29 Jul 2016, at 14:23, Thierry Goubier <[hidden email]> wrote: >> >> Hi Sven, >> >> I'd put RB + SmaCC among the lot. But I consider that really non-trivial : the pattern language of RB (and the underlying pattern matching and unification algorithm) is top notch, and how SmaCC builds on RB to virtually generate code / optimise code / then compile is nothing short of amazing. >> >> SmaCC comes with a pattern matching/unification algorithm over ASTs + auto-generation of AST code + visitor + tree equality + the equivalent of Flex/Bison(*) + a GUI in 11401 lines of code. > > Well, you don't need to convince me that there is some really magic code out there, thanks for pointing this out. People should really do more effort to promote the stuff they like, by writing some nice accessible article about it. (Hint, hint). > > The problem is that even though Smalltalk itself is simple, the whole environment, being super dynamic/flexible, is not. It scares a lot of people that they cannot really grab and hold the code. It is only once you get beyond that initial hurdle (which also requires you to unlearn/learn a new approach), that you can start to explore and appreciate all the good stuff. I am still not sure how we can make this clear to newcomers, but it feels like a critical step. There is an initial tutorial that needs some love here: https://github.com/SquareBracketAssociates/PharoInProgress/tree/master/Smacc -- Serge Stinckwich UCBN & UMI UMMISCO 209 (IRD/UPMC) Every DSL ends up being Smalltalk http://www.doesnotunderstand.org/ |
In reply to this post by jfabry
Indeed.
> I was at that talk, and I am not convinced that we are at that level, we are certainly not better in my opinion. The advantage that they have is the domain-specific language on top of the parsing infrastructure which makes it easy and fast to write (at least) the demos he is showing. We don’t have that and his talk showed me that it is an important thing that is missing. > > -- > Does this mail seem too brief? Sorry for that, I don’t mean to be rude! Please see http://emailcharter.org . > > Johan Fabry - http://pleiad.cl/~jfabry > PLEIAD and RyCh labs - Computer Science Department (DCC) - University of Chile > >> On Jul 29, 2016, at 08:38, Serge Stinckwich <[hidden email]> wrote: >> >> When I see all the buzz around languages workbenches like Rascal: >> https://www.youtube.com/watch?v=Ffx7VtEOSx4 >> >> with MOOSE+RB+SmaCC+Reflectivity+GTools we are close to these tools >> (or even better). > > |
In reply to this post by Thierry Goubier
Thierry I started a Smacc chapter in the PharoInProgress book.
Stef Le 29/7/16 à 15:56, Thierry Goubier a
écrit :
|
Le 29/07/2016 à 21:18, stepharo a écrit : > Thierry > > I started a Smacc chapter in the PharoInProgress book. Ok. I'll have a look if I can contribute during my holidays... Thierry > > Stef > > > Le 29/7/16 à 15:56, Thierry Goubier a écrit : >> >> >> 2016-07-29 15:32 GMT+02:00 Sven Van Caekenberghe <[hidden email] >> <mailto:[hidden email]>>: >> >> >> > On 29 Jul 2016, at 14:23, Thierry Goubier >> <[hidden email] <mailto:[hidden email]>> wrote: >> > >> > Hi Sven, >> > >> > I'd put RB + SmaCC among the lot. But I consider that really >> non-trivial : the pattern language of RB (and the underlying >> pattern matching and unification algorithm) is top notch, and how >> SmaCC builds on RB to virtually generate code / optimise code / >> then compile is nothing short of amazing. >> > >> > SmaCC comes with a pattern matching/unification algorithm over >> ASTs + auto-generation of AST code + visitor + tree equality + the >> equivalent of Flex/Bison(*) + a GUI in 11401 lines of code. >> >> Well, you don't need to convince me that there is some really >> magic code out there, thanks for pointing this out. People should >> really do more effort to promote the stuff they like, by writing >> some nice accessible article about it. (Hint, hint). >> >> >> Understood :) >> >> >> The problem is that even though Smalltalk itself is simple, the >> whole environment, being super dynamic/flexible, is not. It scares >> a lot of people that they cannot really grab and hold the code. It >> is only once you get beyond that initial hurdle (which also >> requires you to unlearn/learn a new approach), that you can start >> to explore and appreciate all the good stuff. I am still not sure >> how we can make this clear to newcomers, but it feels like a >> critical step. >> >> >> Maybe there is a question of coding style coupled with the tools? >> >> Thierry >> >> >> >> > Thierry >> > >> > (*) And a true equivalent, with LR, LALR and GLR ! >> > >> > 2016-07-29 14:05 GMT+02:00 Sven Van Caekenberghe <[hidden email] >> <mailto:[hidden email]>>: >> > <Social Media Marketing> >> > >> > The following interesting question/thread could use some more >> comments/votes: >> > >> > Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News >> > >> > > https://news.ycombinator.com/item?id=12185892 >> <https://news.ycombinator.com/item?id=12185892> >> > >> > Sven >> > >> >> >> > |
I will review anything you write.
I should redo the tutorial to get better at parsing. Stef Le 29/7/16 à 23:22, Thierry Goubier a écrit : > > > Le 29/07/2016 à 21:18, stepharo a écrit : >> Thierry >> >> I started a Smacc chapter in the PharoInProgress book. > > Ok. I'll have a look if I can contribute during my holidays... > > Thierry > > >> >> Stef >> >> >> Le 29/7/16 à 15:56, Thierry Goubier a écrit : >>> >>> >>> 2016-07-29 15:32 GMT+02:00 Sven Van Caekenberghe <[hidden email] >>> <mailto:[hidden email]>>: >>> >>> >>> > On 29 Jul 2016, at 14:23, Thierry Goubier >>> <[hidden email] <mailto:[hidden email]>> >>> wrote: >>> > >>> > Hi Sven, >>> > >>> > I'd put RB + SmaCC among the lot. But I consider that really >>> non-trivial : the pattern language of RB (and the underlying >>> pattern matching and unification algorithm) is top notch, and how >>> SmaCC builds on RB to virtually generate code / optimise code / >>> then compile is nothing short of amazing. >>> > >>> > SmaCC comes with a pattern matching/unification algorithm over >>> ASTs + auto-generation of AST code + visitor + tree equality + the >>> equivalent of Flex/Bison(*) + a GUI in 11401 lines of code. >>> >>> Well, you don't need to convince me that there is some really >>> magic code out there, thanks for pointing this out. People should >>> really do more effort to promote the stuff they like, by writing >>> some nice accessible article about it. (Hint, hint). >>> >>> >>> Understood :) >>> >>> >>> The problem is that even though Smalltalk itself is simple, the >>> whole environment, being super dynamic/flexible, is not. It scares >>> a lot of people that they cannot really grab and hold the code. It >>> is only once you get beyond that initial hurdle (which also >>> requires you to unlearn/learn a new approach), that you can start >>> to explore and appreciate all the good stuff. I am still not sure >>> how we can make this clear to newcomers, but it feels like a >>> critical step. >>> >>> >>> Maybe there is a question of coding style coupled with the tools? >>> >>> Thierry >>> >>> >>> >>> > Thierry >>> > >>> > (*) And a true equivalent, with LR, LALR and GLR ! >>> > >>> > 2016-07-29 14:05 GMT+02:00 Sven Van Caekenberghe <[hidden email] >>> <mailto:[hidden email]>>: >>> > <Social Media Marketing> >>> > >>> > The following interesting question/thread could use some more >>> comments/votes: >>> > >>> > Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News >>> > >>> > > https://news.ycombinator.com/item?id=12185892 >>> <https://news.ycombinator.com/item?id=12185892> >>> > >>> > Sven >>> > >>> >>> >>> >> > > > |
Free forum by Nabble | Edit this page |