master
Fuco1 12 years ago
parent 2ee84cbe55
commit f4ba8db52d
  1. 15
      README.md
  2. 9
      dash.el
  3. 5
      dev/examples.el

@ -129,6 +129,7 @@ Include this in your emacs settings to get syntax highlighting:
* [-repeat](#-repeat-n-x) `(n x)`
* [-cons*](#-cons-rest-args) `(&rest args)`
* [-snoc](#-snoc-list-elem-rest-elements) `(list elem &rest elements)`
* [-interpose](#-interpose-sep-list) `(sep list)`
* [-interleave](#-interleave-rest-lists) `(&rest lists)`
* [-zip-with](#-zip-with-fn-list1-list2) `(fn list1 list2)`
@ -866,6 +867,20 @@ a dotted list.
(-cons* 1) ;; => 1
```
#### -snoc `(list elem &rest elements)`
Append `elem` to the end of the list.
This is like `cons`, but operates on the end of list.
If `elements` is non nil, append these to the list as well.
```cl
(-snoc '(1 2 3) 4) ;; => '(1 2 3 4)
(-snoc '(1 2 3) 4 5 6) ;; => '(1 2 3 4 5 6)
(-snoc '(1 2 3) '(4 5 6)) ;; => '(1 2 3 (4 5 6))
```
#### -interpose `(sep list)`
Returns a new list of all elements in `list` separated by `sep`.

@ -275,6 +275,14 @@ a dotted list."
(setq res (cons res it)))))
res))
(defun -snoc (list elem &rest elements)
"Append ELEM to the end of the list.
This is like `cons', but operates on the end of list.
If ELEMENTS is non nil, append these to the list as well."
(-concat list (list elem) elements))
(defmacro --first (form list)
"Anaphoric form of `-first'."
(let ((n (make-symbol "needle")))
@ -1225,6 +1233,7 @@ structure such as plist or alist."
"-contains-p"
"-repeat"
"-cons*"
"-snoc"
"-sum"
"-product"
"-min"

@ -304,6 +304,11 @@
(-cons* 1 2 3) => '(1 2 . 3)
(-cons* 1) => 1)
(defexamples -snoc
(-snoc '(1 2 3) 4) => '(1 2 3 4)
(-snoc '(1 2 3) 4 5 6) => '(1 2 3 4 5 6)
(-snoc '(1 2 3) '(4 5 6)) => '(1 2 3 (4 5 6)))
(defexamples -interpose
(-interpose "-" '()) => '()
(-interpose "-" '("a")) => '("a")

Loading…
Cancel
Save