>From a sheer PL research and design perspective, our module system is fantastic. From a disciplined approach to SE, it lacks (1) tool support (show me all exports, their contracts, etc) and/or (2) linguistic support for disciplined exports such as the (wonderful) suggestion you came up with for Scribble programs.
The good news is that we can create it all. It's a mere matter of programming. The bad news is that we must create it all. It's a mere matter of programming. :-) On Apr 30, 2014, at 3:15 PM, Matthew Flatt wrote: > It would make sense for a document to be accompanied by a library that > exports the document's module path and tag names, so that the path and > tags could change. Even better, the module could export `secref`-like > functions to refer to various sections of the document, where the > functions map to the same or different sections, and the mapping could > change over time. > > So, we can support a spectrum of less-to-more abstract approaches, and > maybe we should build Scribble libraries that help with the more > abstract end of the spectrum. > > I think your larger point is that Racket modules tend encourage the > less abstract end, and I agree. But I also think that's the right > choice, along the same lines that structs should have been made > transparent by default (and it took me a long time to arrive at that > conclusion). ____________________ Racket Users list: http://lists.racket-lang.org/users