2017-11-07 11:37 GMT+01:00 Norbert Hartl <norb...@hartl.name>:
> > Am 07.11.2017 um 11:24 schrieb Denis Kudriashov <dionisi...@gmail.com>: > > > 2017-11-07 9:23 GMT+01:00 Nicolas Cellier <nicolas.cellier.aka.nice@gmai > l.com>: > >> I have other ideas yet. >> >> The selector undefinedFirst is good, but the implementation not so. >> I don't like the UndefinedSortFunction: too specific, compose oddly... >> >> In the PR, collatedBy: is the way to tell how we sort properties (if you >> have a better name, go, it's bikesheding day) >> >> "sort by size of name" >> (people sorted: (#name collatedBy: #size)) >> = (people sorted: [:p| p name size]) >> > > It is nice idea but it should be not bound to sort functions. Because this > feature is useful for other block based messages: > > people collect: #name >> #size > > people select: #name >> #size >> #even > > (I use >> as example). > Generally it is about functional programming. Would be nice to have this > in image because it will simplify scripting a lot. > I remember nice set of blog posts from Vassili Bykov about such kind of > things http://blog.3plus4.org/2007/03/. > > And it is really valuable for databases. The query tree can be transformed > into the query language of another system like a database. > > Norbert > > I was thinking of the same chevron selector or maybe a pipe |, but I find that >> better indicates that result is directed to next block/function/processing unit. Of course it sounds much like a DSL.