On Sunday, February 16, 2003, 4:01:47 AM, dblack wrote: > Hi -- > On Sat, 15 Feb 2003, Gavin Sinclair wrote: >> On Friday, February 14, 2003, 2:00:56 PM, Bil wrote: >> >> > dblack / candle.superlink.net wrote: >> >> >> >> so there's no way to determine from the :: notation what you're >> >> intending to create. >> >> > Excellent point. >> >> However, since the idea of the "module" keyword is to introduce a new >> module or reuse an existing one, I don't see why the OP's idea >> couldn't work. > I assumed he meant a kind of autovivification, so that the first > line in a program could be: > module A::B::C > which would suffer from the ambiguity I mentioned. But if it's > incremental -- i.e., if the above requires that A and B already exist > and be a valid path to a new module definition (namely, C) -- that > seems OK. I don't see a problem with autovivification, though. If the first line in a program is module A::B::C what conceptually prevents this from being equivalent to module A module B module C ? Naturally, if A::B is a (non-Module) constant, then an error would result. Gavin