[racket-dev] take/drop argument order

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Thu Apr 11 16:12:12 EDT 2013

At Thu, 11 Apr 2013 15:20:54 -0400, Eli Barzilay wrote:
> In any case, given that nobody seems sufficiently interested, maybe
> it's best to remove the new functions for this release to avoid code
> depending on it which will make later changes more difficult?

I don't think we're going to have any great new ideas. How about
leaving them as they are, which is maybe the best compromise we'll find
for `racket', and start work on `racket2'?


With respect to the conventions of argument order and names, maybe we
could have the rule that a function whose name is `X-' takes its X
first (and that would be the common case), while functions that do not
take the X first simply don't start with `X-'. In that view, the
current `map' is not short for `list-map'; it's short for `map-lists'.
Similarly, `vector-map' should have been called `map-vectors'. The
`list-ref' and `vector-ref' functions are correctly named. The
`hash-map' function is also correctly named, although some would prefer
that we had `map-hash'; we could have both.

Of course, for `racket2', `map' should be short for `map-sequences',
not `map-lists', and so on.


Posted on the dev mailing list.