diff --git a/ciel.asd b/ciel.asd index b35d52d..6fbe4a4 100644 --- a/ciel.asd +++ b/ciel.asd @@ -105,10 +105,6 @@ :for :trivial-do - ;; lambda shorthands - :fn - :cl-punch - :cmd :serapeum :shlex diff --git a/docs/dependencies.md b/docs/dependencies.md index a837dcf..94d2ee0 100644 --- a/docs/dependencies.md +++ b/docs/dependencies.md @@ -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 - for: An extensible iteration macro library. diff --git a/docs/language-extensions.md b/docs/language-extensions.md index 1e4081e..51769da 100644 --- a/docs/language-extensions.md +++ b/docs/language-extensions.md @@ -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 ---------------- diff --git a/src/ciel.lisp b/src/ciel.lisp index efd31c4..4a5ce4a 100644 --- a/src/ciel.lisp +++ b/src/ciel.lisp @@ -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