If you are going to make a new, more general function you could make all of the arguments keyword based.
Robby On Saturday, June 4, 2011, Eli Barzilay <e...@barzilay.org> wrote: > So the request to get subgroups from `regexp-match*' is not new, and > since I've seen it twice in a week I'm going to add it. What I'm > thinking to do is some `regexp-match**' that takes another argument > that is the function to apply on the usual results of `regexp-match'. > Assuming that this is the first argument, `regexp-match*' could be > defined simply as: > > (define (regexp-match* . xs) > (apply regexp-match** car xs)) > > but now you can use `values' and get the complete results from each > match, or `cdr' and get just the subgroups, etc. > > (I'll probably do some `regexp-match-positions**' too.) > > The question is how to add that argument. Adding a keyword to a > function that already has 57 arguments looks odd; adding a 58th > argument is bad for obvious reason that lead to keyword args in the > first place; adding it first is the most convenient, but seems like it > would be an odd extensions. > > Opinions? > > -- > ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: > http://barzilay.org/ Maze is Life! > _________________________________________________ > For list-related administrative tasks: > http://lists.racket-lang.org/listinfo/dev > _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev