 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Delay ;;;;;;;;;;;;;;;;;;;;
 
-(defprotocol IRealized
-  (-realized? [d]))
-
 (deftype Delay [f state]
   
   IDeref


(defprotocol IPrintable
  (-pr-seq [o opts]))

;;;;;;;;;;;;;;;;;;; fundamentals ;;;;;;;;;;;;;;;
(defn identical? [x y]

    (deref x)
    x))

(defn realized?
  "If d is a Delay, will return true if the delay fn has been realized, returns false if it has not,
  returns nil if d is not a Delay"
  [d]
    (-realized? d))

(comment

