library function on maybe values

This commit is contained in:
Sam Caldwell 2022-07-19 12:13:27 -04:00
parent 643cc4d3ab
commit 6a7879c06e
1 changed files with 11 additions and 1 deletions

View File

@ -5,9 +5,12 @@
None*
Some
some
none)
none
has?)
(require "core-types.rkt")
(require "prim.rkt")
(require "core-expressions.rkt")
(define-constructor* (none* : None*))
@ -35,3 +38,10 @@
(error "some")]
[none
(error "none")]))
(define ( (X) (has? [v : (Maybe X)] [p : (→fn X Bool)] -> Bool))
(match v
[none
#f]
[(some $x)
(p x)]))