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]) If we defined <=> in Boolean (orWhatEverTheLongSelectorYouPreferBecausePharoHasTheFreedomToHaveOwnTaste:) in order to have true sorted first, then we can generalize. "sort by absolute value, but put the negative first" numbers sorted: #negative sortedFirst, #abs "sort by name, but put the undefined last" people sorted: (#name collatedBy: #isNil sortedLast) , #name. sortedFirst in this case would be a synonym for ascending (or asSortFunction). Alternatively, if we don't want <=> in Boolean because it's not natural (the fact that we need a synonym is a clue) then we can have sortedFirst answering a specialized BooleanSortFunction. 2017-11-07 1:21 GMT+01:00 Nicolas Cellier < nicolas.cellier.aka.nice@gmail.com>:
Back to the thread: https://github.com/pharo-project/pharo/pull/440
2017-11-06 22:52 GMT+01:00 Ben Coman <btc@openinworld.com>:
On Tue, Nov 7, 2017 at 4:52 AM, Nicolas Cellier < nicolas.cellier.aka.nice@gmail.com> wrote:
MC is not so bad. OK branches are not named (or neeed not be), GUID are inferior to SHA, etc... The biggest difference comes from github, that is the social environment, not necessarily git.
Some would say it was github that "made" git (popular).
cheers -ben