Path: utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!europa.asd.contel.com!gatech!mcnc!rock.concert.net!mcmahan From: mcmahan@cs.unca.edu (Scott McMahan) Newsgroups: comp.lang.modula2 Subject: Re: Why no ** operator in Modula2? Message-ID: <1991Jun19.234112.29855@rock.concert.net> Date: 19 Jun 91 23:41:12 GMT References: <1991Jun19.134807.13514@agora.rain.com> Sender: news@rock.concert.net Organization: University of North Carolina at Asheville Lines: 33 To keep the debate going: >>Well, in other languages I *do* use a lot upper/lowercase names. I use >>uppercase names for external (to the module) names, lowercase for functions and >>Uppercase just the first letter for procedures. This can't be done in Modula 2. > > > It certainly can be done, as long as there is no conflict with the reserved >words of the language. One feature I *especially* like about Modula-2 is the way it will let you use lowercase versions of reserve words as identifiers! For example, TYPE arraytype = ARRAY [0..10] OF settype; is perfectly legal! In a type declaration, you can be very descriptive (foobartype -- what is it? An array? A set? A file?) of your types. Or variable names, for that matter, but if the types document themselves it isn't necessary. When you import a type from somewhere else, it is very obvious which type it really is. No pun intended, but: The only thing I dislike is mixed case, because it is awful to type. Scott McMahan "It's not a bug, it's a *feature* " :-)