www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | Submodules | README | LICENSE

threading.rkt (742B)


      1 #lang typed/racket
      2 (require "typed-untyped.rkt")
      3 (define-typed/untyped-modules #:no-test
      4   ;; raco pkg install alexis-util
      5   ;; or:
      6   ;; raco pkg install threading
      7   (require alexis/util/threading
      8            (for-syntax racket/syntax
      9                        syntax/parse))
     10   
     11   (define-syntax-rule (~>_ clause ... expr) (~> expr clause ...))
     12   (define-syntax (<~ stx)
     13     (syntax-parse stx
     14       [(_ expr clause ...)
     15        (define/with-syntax (r-clause ...)
     16          (reverse (syntax->list #'(clause ...))))
     17        #'(~> expr r-clause ...)]))
     18   
     19   (define-syntax-rule (<~_ clause ... expr) (<~ expr clause ...))
     20   
     21   (provide <~ <~_ ~>_
     22            (rename-out [_ ♦] [<~_ <~♦] [~>_ ~>♦])
     23            (all-from-out alexis/util/threading)))