I’m not completely sold on `most`, but I’m close. I like that it’s terse and fairly obvious in what it does. The obvious downside is that it’s a little vague. The expression (most < lst) doesn’t read super well, IMO.
I think passing a less-than? argument makes this function much closer conceptually to `sort` than anything else, even if it’s really a `fold` in reality. In my mind, this function semantically sorts a list and returns the first element from the result. I think the name should reflect that. This is why names like “find-best” and “find-optimal” don’t quite sit with me. They might be the best options—I haven’t found anything clearly better yet—but these names express an intent that simply isn’t there. It would be like calling `append-map` something like `explode` or `permute`: it might describe how the behavior is used in 70% of cases, but it does a poor job of explaining what the function actually does. In the same line of thought as `append-map`, the name `first-sort` has crossed my mind, but this feels just as opaque. The name `first-by` is very close, but it fails: that function has a meaning closer to `findf` to me, not whatever this function is. Other names in the same vein are too wordy: `first-with-order`, `first-of-sorted`... and none of those convey the meaning any better, anyway. So yes, at this point, the conversation may be little more than bikeshedding. It might be best to just pick one of the better solutions and roll with it. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.

