Matus Goljer

Results 717 comments of Matus Goljer

Yea, this already exists in dash. The problem is that it doesn't work well without lexical scope (the lambda there can break quite easily). See `-grade-up` or `-grade-down`

Consider for example ``` (let ((comparator (lambda (a b) (let (comparator) (funcall comparator a b))))) (sort '(1 2 3 4) comparator)) ```

Well, that's a bit silly example... I'll try to come up with something better :D I'm not sure now it showcases what I wanted.

Can you open a PR with your implementation so we can review it?

Followed in the PR.

I don't understand this example (partitions (list #'primep #'evenp) (iota 10)) => ((2 3 5 7) (0 4 6 8)), (1 9) Your first example seems to follow a similar...

We should put the list as last argument, that's the dash convention in 95% of the cases. The reason being that you can then use threading macros more consistently.

Can we open a pull request? It's easier to review code that way.

I like that we get the non-matched items, since this can then also work as a `-reject` alternative by using the last item of the list. Or we can have...

Well, the destructuring wouldn't really be all that different because it works recursively: ```elisp ;; the API proposed by alphapapa (-let [((strings keywords) rest) (-separate-multi '(#'stringp #'keywordp) list)] ... )...