> Robert Hill wrote: > > > As recently as the 1980s IBM (and vendors of plug-compatible equipment, > > as clones were called then) were selling, for use with their mainframes, > > EBCDIC terminals whose keyboard lacked such characters as > > > > \ ~ ^ [ ] { } > > Hello, > > I have to admit this discussion is getting out of hand and forces me to > press the [Del] button too often. First, I can see no possible harm in > letting ^ denote exponentiation, but keeping the old ** as well. > In the mean time, use of any good preprocessing system, I have to add my two cents here. ** must always remain do to backward compatibility. In general, I think it is a bad thing to have more than one way to do things. OK, things like == I think are worth the trouble, but in general I think there should be ONE OFFICIAL WAY to do things and declare the other stuff obsolescent before deleting it. (Candidates for this include DIMENSION as a declaration as opposed to an attribute etc; I think the subsets already go a long way in this direction.) Not using ^ to denote exponentiation leaves the possibility open to use it for something else in the future. Possibly confusing for C programmers, but who cares about them. :-) I think the Fortran character set should never exceed 7-bit printable US ASCII. At the moment, $ and ? are allowed but have no purpose. Presumably, these could be deemed to have a purpose in the future without breaking any code. (I, and I am sure others, used $ as a continuation mark in Fortran77, since it was not allowed anywhere else (except in comments).) Obviously, $, ? and ^ should be given meaning only for major features, or possibly for clearing up confusion where it often occurs (in this case, it would mean introducing a second way to do something). Let's see, apart from $, ? and ^, what is still not part of the character set? ~`@#[]\{} I think [] should be allowed to replace parentheses in the case of array indexes. Perhaps {} for function references. Then () could be used for grouping. Or perhaps {} for grouping leaving () for function (and subroutine) references. (I think the latter is better.) (I think this corresponds to Mathematica usage.) I like the idea of @ introducing a macro, something like MACRO FOO <insert code here> END MACRO FOO then @FOO in the code. This would essentially be like INCLUDE, except that FOO is defined within the routine in which it is used. (When PART of a format statement is repeated a number of times would be a nice use for this, among others.) Don't use ` for anything, too confusing. If any new delimiters are needed, why not use \ instead of (//) and the like? That still leaves ~ and #. -- Phillip Helbig Email .............. [log in to unmask] Kapteyn Instituut Email ................. [log in to unmask] Rijksuniversiteit Groningen Tel. ................... +31 50 363 6647 Postbus 800 Fax .................... +31 50 363 6100 NL-9700 AV Groningen Web ... http://www.astro.rug.nl/~helbig/ My opinions are not necessarily those of my employer. <A HREF=" http://gladia.astro.rug.nl:8000/helbig/hire/hire.html ">HIRE ME!</A> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%