Yes, I’d considered that point, and yes, it makes sense. Anyway, the situation in which I was trying to do something like this ended up being unnecessary, so I don’t even have a valid use-case anymore. I think it’s probably okay to leave it as-is unless someone can come up with a useful reason to care.
> On Jan 24, 2015, at 09:24, Sam Tobin-Hochstadt <sa...@cs.indiana.edu> wrote: > > On Thu, Jan 22, 2015 at 3:57 PM, Alexis King <lexi.lam...@gmail.com> wrote: >> >> I can work around this in a variety of ways—I can extract this into an >> untyped module and use require/typed, I can use vectors to “fake” structs >> and provide an appropriate interface, etc. Still, I wonder if there are any >> plans to resolve this type of problem? Since it seems to be an issue with >> how TR handles types at its core, I’m not even sure how feasible it would >> be. > > > I don't currently have plans to work on this problem. The big issue is > that Racket structs are what's called "generative", meaning that each > time you execute a struct declaration, you get a different struct > type. Thus it's not at all clear what the right type should be for > your `make-me-a-struct` function, and type systems that do allow this > sort of thing (such as ML) would reject this particular use. > > Can you say more about the specific issue you're having? There might > be a different way around it. > > Sam _________________________ Racket Developers list: http://lists.racket-lang.org/dev