Re: [racket-users] iso-recursive types not allowed in TR?

2015-06-15 Thread 'John Clements' via users-redirect
> On Jun 13, 2015, at 7:37 AM, Alexander D. Knauth wrote: > > > On Jun 13, 2015, at 12:18 AM, 'John Clements' via users-redirect > wrote: > >> Okay, I shouldn’t change topics, but while I’ve got you (guys): it looks >> like (module+ test …) now works in TR, but not when there are imported

Re: [racket-users] iso-recursive types not allowed in TR?

2015-06-15 Thread Alexander D. Knauth
On Jun 13, 2015, at 8:18 AM, Hendrik Boom wrote: > On Fri, Jun 12, 2015 at 06:06:05PM -0700, 'John Clements' via users-redirect > wrote: >> On Jun 12, 2015, at 5:52 PM, Alexander D. Knauth >> wrote: >>> On Jun 12, 2015, at 8:30 PM, 'John Clements' via users-redirect >>> wrote: >>> (def

Re: [racket-users] iso-recursive types not allowed in TR?

2015-06-13 Thread Alexander D. Knauth
On Jun 13, 2015, at 12:18 AM, 'John Clements' via users-redirect wrote: > Okay, I shouldn’t change topics, but while I’ve got you (guys): it looks like > (module+ test …) now works in TR, but not when there are imported bindings… > suppose I have foo.rkt: I’ve run into similar problems with

Re: [racket-users] iso-recursive types not allowed in TR?

2015-06-13 Thread Hendrik Boom
On Fri, Jun 12, 2015 at 06:06:05PM -0700, 'John Clements' via users-redirect wrote: > > > On Jun 12, 2015, at 5:52 PM, Alexander D. Knauth > > wrote: > > > > > > On Jun 12, 2015, at 8:30 PM, 'John Clements' via users-redirect > > wrote: > > > >> Here’s the type I want to write: > >> > >>

Re: [racket-users] iso-recursive types not allowed in TR?

2015-06-12 Thread 'John Clements' via users-redirect
> On Jun 12, 2015, at 6:07 PM, Asumu Takikawa wrote: > > On 2015-06-12 17:30:42 -0700, 'John Clements' via users-redirect wrote: >> (define-type (HuffJsexpr T) >> (U T (HashTable Symbol HuffJsexpr))) > > The variant that Alex mentioned should work. Interesting… there *is* a problem, though; I

Re: [racket-users] iso-recursive types not allowed in TR?

2015-06-12 Thread Asumu Takikawa
On 2015-06-12 17:30:42 -0700, 'John Clements' via users-redirect wrote: > (define-type (HuffJsexpr T) > (U T (HashTable Symbol HuffJsexpr))) The variant that Alex mentioned should work. I think the only restrictions on recursive types that TR enforces are that it has to be (A) productive, in th

Re: [racket-users] iso-recursive types not allowed in TR?

2015-06-12 Thread 'John Clements' via users-redirect
> On Jun 12, 2015, at 5:52 PM, Alexander D. Knauth wrote: > > > On Jun 12, 2015, at 8:30 PM, 'John Clements' via users-redirect > wrote: > >> Here’s the type I want to write: >> >> (define-type (HuffJsexpr T) >> (U T (HashTable Symbol HuffJsexpr))) > > > Do you mean this? > (define-type (

Re: [racket-users] iso-recursive types not allowed in TR?

2015-06-12 Thread Alexander D. Knauth
On Jun 12, 2015, at 8:30 PM, 'John Clements' via users-redirect wrote: > Here’s the type I want to write: > > (define-type (HuffJsexpr T) > (U T (HashTable Symbol HuffJsexpr))) Do you mean this? (define-type (HuffJsexpr T) (U T (HashTable Symbol (HuffJsexpr T #lang typed/racket (defi

[racket-users] iso-recursive types not allowed in TR?

2015-06-12 Thread 'John Clements' via users-redirect
Here’s the type I want to write: (define-type (HuffJsexpr T) (U T (HashTable Symbol HuffJsexpr))) … for use in converting a tree to a jsexpr. My memory was that this wasn’t possible in TR because TR would get caught in a loop trying to figure out how many times to “unfold” the type in order t