On Mon, Jun 1, 2015 at 12:58 PM, Matt Oliveri <atma...@gmail.com> wrote: > On Mon, Jun 1, 2015 at 3:36 PM, Matt Rice <ratm...@gmail.com> wrote: >> On Mon, Jun 1, 2015 at 11:47 AM, Matt Oliveri <atma...@gmail.com> wrote: >>> On Mon, Jun 1, 2015 at 2:13 PM, Matt Rice <ratm...@gmail.com> wrote: >>>> On Mon, Jun 1, 2015 at 10:58 AM, Matt Oliveri <atma...@gmail.com> wrote: >>>>> With this syntax, foo can refer to bar. >>>> >>>> I know at the top you say mutually recursive, but >>>> wrt the last line, foo and bar can both refer to each other.. >>> >>> Indeed. So in particular, foo can refer to bar. :) What I was trying >>> to say is that explicitly-marked mutually recursive definitions are >>> when OCaml lets you have forward references. >>> >>> If you can have a forward reference any old time, it doesn't mean you >>> don't have mutually recursive types, it means you have them without >>> even saying so. >> >> I'd have to go look at the original bitc compiler and try again, but >> IIRC it had forward references but I was never able to get mutually >> recursive types out of it without infinite source code :) > > Hmm. Well I've never tried the old bitc. I suppose it could forbid > mutually recursive types, but I don't see why you'd want to do that, > if you have regular recursive types.
I believe it was in fact a bug in the type environment lookup that, I was just trying to point out that because we have both forward references, and back references, need not necessarily imply that we in fact have loops, I will give that that is how it usually works yes... _______________________________________________ bitc-dev mailing list bitc-dev@coyotos.org http://www.coyotos.org/mailman/listinfo/bitc-dev