Now imagine if meander's pattern matching logic could run at compile-time and produce optimized code...
@shyamspeaking4 жыл бұрын
This library has changed the way I look at code. Brilliant stuff. I was trying to get meander work in klipse without much success , so that I could show live to my bosses to sell this. Once again , great library and thanks for introducing me to term-rewrite.
@webwarrior05 жыл бұрын
Actually, most of the things mentioned between 30:51 and 38:20 are already possible in Pharo. For instance, method deprecation is handled more or less as was described here: when deprecated method is called, code is automatically rewritten at call site to use new method.
@jimmyhmiller5 жыл бұрын
SmallTalk definitely is inline in many ways with what I was talking about. I was advocating there for a more bundled experience like SmallTalk gives you where code is resident in memory, not just sitting on files. From what I can google, it seems like the way you do this in Pharo is actually through a rewriting extension. www.peteruhnak.com/blog/2015/08/06/transforming-deprecated-code-with-rewritetool/ If that's what you are referring to, that is great! But my point was that we shouldn't have to have these things bolted on. They should be a natural consequence of our execution model. Tools are fantastic, but what if we didn't have to build them? What if our language's execution model was just simple enough that anyone could do these things without someone building a tool? All that said, SmallTalk is great and definitely worth exploring for anyone reading this that hasn't.
@simonlovatt93425 жыл бұрын
I'm showing my age: This reminded me of Jackson Structured Programming (en.m.wikipedia.org/wiki/Jackson_structured_programming) from circa 1975, except Meander takes a JSP-like data transformation design and implements it directly rather than having to write the code manually.
@garthgoldwater52565 жыл бұрын
I can’t stop thinking about this talk. Great job!
@shyamspeaking4 жыл бұрын
Thank you for this library. Such an intuitive way to describe and manipulate data.
@CaseyC1045 жыл бұрын
Really awesome stuff here. I feel like there's so much possibility; the comparison of this to the level above map/reduce/etc. is really compelling and make me excited for what can be done in this space!
@brujua75 жыл бұрын
Great talk. Very interesting topic. Thanks a lot!
@geekboy3283 жыл бұрын
I want to port this to javascript
@julkiewitz5 жыл бұрын
Isn't that similar to LINQ in SQL syntax?
@jimmyhmiller5 жыл бұрын
LINQ with sql syntax is still the function transformation I was talking about at the beginning. It has some syntatic sugar. But still ultimately we are doing these pipelines. Desugaring the sql syntax shows you exactly that. That said LINQ in both forms is great. I just think we can take these things further.
@ggzor5 жыл бұрын
Amazing stuff!
@proweiqi5 жыл бұрын
Right. Check out R's dplyr
@jimmyhmiller5 жыл бұрын
dplyr is great. But it is the approach I talked about at the beginning. dplyr is map (select), reduce (summarize), filter, and other data manipulation functions. I think this approach is good, but as I talk about, we can do better.