mirror of
https://gitlab.com/vindarel/ciel.git
synced 2026-01-30 12:22:52 -08:00
rm unused lambda shortcuts
This commit is contained in:
parent
4b12cfeb62
commit
4e980abac7
4 changed files with 0 additions and 48 deletions
4
ciel.asd
4
ciel.asd
|
|
@ -105,10 +105,6 @@
|
|||
:for
|
||||
:trivial-do
|
||||
|
||||
;; lambda shorthands
|
||||
:fn
|
||||
:cl-punch
|
||||
|
||||
:cmd
|
||||
:serapeum
|
||||
:shlex
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@
|
|||
- cl-cron: A simple tool that provides cron like facilities directly inside of common lisp. For this to work properly note that your lisp implementation should have support for threads
|
||||
- cl-csv: Facilities for reading and writing CSV format files
|
||||
- cl-ppcre: Perl-compatible regular expression library
|
||||
- cl-punch: Scala-like anonymous lambda literal
|
||||
- cl-reexport: Reexport external symbols in other packages.
|
||||
- clesh: Clesh is a very short program that provides
|
||||
mechanisms for running and composing Unix shell commands and
|
||||
|
|
@ -25,7 +24,6 @@ variables and and function return values.
|
|||
- dissect: A lib for introspecting the call stack and active restarts.
|
||||
- easy-routes: Yet another routes handling utility on top of Hunchentoot
|
||||
- fiveam: A simple regression testing framework
|
||||
- fn: Some macros for lambda brevity
|
||||
<!-- currently removed: -->
|
||||
<!-- - fof: File-object finder. Enable rapid file search, inspection and manipulation. -->
|
||||
- for: An extensible iteration macro library.
|
||||
|
|
|
|||
|
|
@ -217,43 +217,6 @@ We use [pythonic-string-reader](https://github.com/smithzvk/pythonic-string-read
|
|||
too, even only internally. It happens with the Jonathan library.
|
||||
|
||||
|
||||
## Lambda shortcuts
|
||||
|
||||
You have to enable cl-punch's syntax yourself.
|
||||
|
||||
We use [cl-punch](https://github.com/windymelt/cl-punch/) - Scala-like anonymous lambda literal.
|
||||
|
||||
``` example
|
||||
(ciel:enable-punch-syntax)
|
||||
```
|
||||
|
||||
```lisp
|
||||
;; ^() is converted into (lambda ...) .
|
||||
;; Each underscore is converted into a lambda argument.
|
||||
|
||||
(mapcar ^(* 2 _) '(1 2 3 4 5))
|
||||
;; => '(2 4 6 8 10)
|
||||
|
||||
;; One underscore corresponds one argument.
|
||||
|
||||
(^(* _ _) 2 3)
|
||||
;; => 6
|
||||
|
||||
;; <_ reuses last argument.
|
||||
|
||||
(mapcar ^(if (oddp _) (* 2 <_) <_) '(1 2 3 4 5))
|
||||
;; => '(2 2 6 4 10)
|
||||
|
||||
;; _! corresponds one argument but it is brought to top of the argument list.
|
||||
;; It can be useful when you want to change argument order.
|
||||
|
||||
(^(cons _ _!) :a :b)
|
||||
;; => (:b . :a)
|
||||
|
||||
(^(list _! _! _!) 1 2 3)
|
||||
;; => '(3 2 1)
|
||||
```
|
||||
|
||||
Pattern matching
|
||||
----------------
|
||||
|
||||
|
|
|
|||
|
|
@ -48,11 +48,6 @@ We currently only try this with serapeum. See *deps/serapeum/sequences-hashtable
|
|||
:include
|
||||
'(:enable-pythonic-string-syntax
|
||||
:disable-pythonic-string-syntax))
|
||||
(cl-reexport:reexport-from :cl-punch
|
||||
:include
|
||||
'(:enable-punch-syntax
|
||||
;; no disable
|
||||
))
|
||||
|
||||
;; Pattern matching.
|
||||
(cl-reexport:reexport-from :trivia
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue