Permalink
Switch branches/tags
Nothing to show
Find file Copy path
2afaf90 Jan 27, 2018
49 lines (37 sloc) 1.53 KB

Build Status, Coverage Status, Build Stats, Online Documentation, Maintained as of 2018, License: CC0 v1.0.

anaphoric

Anaphoric conditional forms for racket:

(aif (member 'a lst)
  (displayln it)
  (displayln "not found")) ;; Can't use "it" in the else clause.

(awhen (member 'a lst)
  (displayln it))

(acond
  [(member 'a lst) (displayln it)]
  [(member 'b lst) (displayln it)]
  [else (displayln "not found")]) ;; Can't use "it" in the else clause.

This package also provides hygienic versions:

(if-let [x (member 'a lst)]
  (displayln x)
  (displayln "not found")) ;; Can't use "x" in the else clause.

(when-let [x (member 'a lst)]
  (displayln it))

(cond-let x
  [(member 'a lst) (displayln x)]
  [(member 'b lst) (displayln x)]
  [else (displayln "not found")]) ;; Can't use "x" in the else clause.

Installation

raco pkg install --deps search-auto anaphoric