[racket-dev] submodules
I'll reply to the rest later, but two quick ones:
Just now, Matthew Flatt wrote:
> > How about just (submodule foo ...) be a more memorable syntax for
> > (module* foo #f ...)?
>
> That was Jon's suggestion, and my objection is that "submodule"
> means something more general than those nested modules that are
> declared with `submodule'.
I just realized that the main use of this (the specific combination of
`module*' with #f) is for sectioning the file -- so how about going in
the direction of `subsection', or to avoid the obvious problem with
scribble: `subpart'?
> > (BTW, there's an obvious question here of why not do that for all
> > paths, so that `foo/bar/baz' can access a `bar/baz' submodule in
> > `foo' or a `baz' in `foo/bar'...
>
> Search paths cause lots of trouble and should be avoided when
> possible. This particular two-step search seem to be just barely
> tolerable for `#lang', and I still worry about it; I wouldn't
> suggest it if I saw a better way to accommodate existing code.
I completely agree -- specifically, the "mess" that I referred to at
the end of that comment was due to how things ended: I inevitably
would resort to grepping text to find where some change needs to be
made, I created code mostly via copy-paste, and macros would get very
confusing to deal with. It was a kind of an experiment that
demonstrated why this particular generalization looks really cute on
paper, but in practice it is a total failure.
--
((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay:
http://barzilay.org/ Maze is Life!