On Thu, Apr 11, 2013 at 6:47 PM, Eric Dobson <eric.n.dob...@gmail.com> wrote: > You shouldn't be able to send the TR into an inifinite loop. > Typechecking is supposed to terminate. Please try to reduce it to the > minimum testcase and file a bug.
I just filed pr 13687. > > On Thu, Apr 11, 2013 at 3:32 PM, Danny Yoo <d...@hashcollision.org> wrote: >> Perhaps something like this? >> >> >> ;;;;;;;;;;;;; >> #lang typed/racket/base >> >> (provide mynull mycar mycdr) >> >> (struct: MyNull ()) >> (define mynull (MyNull)) >> >> (define-type MyListof (All (A) (Rec X (U MyNull (Pair A X))))) >> >> (: mycar : (All (A) ((MyListof A) -> A))) >> (define (mycar lst) >> (if (MyNull? lst) >> (error 'mycar "given list is empty") >> (car lst))) >> >> (: mycdr : (All (A) ((MyListof A) -> (MyListof A)))) >> (define (mycdr lst) >> (if (MyNull? lst) >> (error 'mycdr "given list is empty") >> (cdr lst))) >> ;;;;;;;;;;;;; >> >> where mynull is the singleton instance of the opaque structure type MyNull. >> _________________________ >> Racket Developers list: >> http://lists.racket-lang.org/dev _________________________ Racket Developers list: http://lists.racket-lang.org/dev