Hi everybody,

I don't understand what the difference is with define and define/contract in
the following cases. Can somebody explain what happens here? Especially why
does unfun not eq? itself?!?

#lang racket

(define (fun) 'fun)
(define/contract (unfun) (-> symbol?) 'unfun)
(define fun? (contract (-> symbol?) fun 'fun '!fun))

> (eq? fun fun)
#t
> (eq? unfun unfun)
#f
> (eq? fun? fun?)
#t

Thanks,
-Markku
_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/users

Reply via email to