(j3.2006) Syntax for US-08?
Van Snyder
Van.Snyder
Fri Sep 27 19:01:48 UTC 2013
On Thu, 2013-09-26 at 18:02 -0600, Dan Nagle wrote:
> Hi,
>
> I agree with Stan--
>
> Specs would be nice.
Specs, or at least detailed requirements, would have been nice a year
ago, when we bought this three-legged pig in a ramblesgack poke.
> We've had a lot of valuable suggestions towards something.
> Let's get straight: towards What.
>
> Now, I believe clarity is better than papers.
>
> On Sep 26, 2013, at 11:35 , "Whitlock, Stan" <stan.whitlock at intel.com> wrote:
>
> > I see where Steve is headed and I like the "implicit none-ness" approach. I think users don't know what they are calling and this gives them a way for the compiler to tell them they don't have an explicit interface for procedure XXX, etc. {At least I think that's what they want - specs would be nice.} This is analogous to IMPLICIT NONE meaning "tell me about all variables that aren't explicitly declared". That's why I think some form of IMPLICIT would be better than REQUIRE - if I can tell you which procedures need explicit interfaces, why do I need the compiler to tell me too?
> >
> > For syntax I'd prefer:
> >
> > IMPLICIT NONE (INTERFACES)
> >
> > That way, the current:
> >
> > IMPLICIT NONE
> >
> > could also be spelled:
> >
> > IMPLICIT NONE (DECLARATIONS)
> >
> > /Stan
> >
> > From: j3-bounces at mailman.j3-fortran.org [mailto:j3-bounces at mailman.j3-fortran.org] On Behalf Of Van Snyder
> > Sent: Thursday, September 26, 2013 1:28 PM
> > To: fortran standards email list for J3
> > Subject: Re: (j3.2006) Syntax for US-08?
> >
> > I agree with Bill and Steve that REQUIRE[:] <require-list> is obvious, not confusing, and superior to any of the other proposals I've seen. I'll write 13-312r1 with a Syntax section that proposes that syntax -- unless somebody has a different preference, in which case there will be a Syntax section with a proposed straw vote.
> >
> > Lionel, Steve wrote:
> > What customers repeatedly ask us for is "no implicit interface". Personally,
> > I don't see the point of tying in the EXTERNAL statement, since as Bill
> > suggests it could be confusing and the "external-ness" is not really the
> > important attribute (you can have an external procedure with an explicit
> > interface.)
> >
> > I had suggested earlier adding to the IMPLICIT statement syntax something
> > like:
> >
> > IMPLICIT INTERFACE:NONE
> >
> > but I like the idea of REQUIRE as being more extensible.
> >
> > Steve
> >
> > -----Original Message-----
> > From: j3-bounces at mailman.j3-fortran.org
> > [mailto:j3-bounces at mailman.j3-fortran.org] On Behalf Of Bill Long
> > Sent: Thursday, September 26, 2013 1:16 AM
> > To: fortran standards email list for J3
> > Subject: Re: (j3.2006) Syntax for US-08?
> >
> > It is a bit unclear to me what is being required here. If it is just the
> > EXTERNAL attribute, then I see the point for functions, but not so much for
> > subroutines. The CALL part of the reference is a pretty unambiguous
> > give-away. On the other hand, if the requirement is for actual interfaces,
> > then it would be equally valuable for functions and subroutines.
> >
> > One possibility would use directly the word in the proposal:
> >
> > REQUIRE : <xxx-list>
> >
> > where <xxx> is
> >
> > EXTERNAL or
> > INTERFACE or
> > TYPE
> >
> > The TYPE version would be redundant with IMPLICIT NONE. INTERFACE would be
> > a superset of EXTERNAL, so only one of the two should be specified.
> >
> > Cheers,
> > Bill
> >
> >
> > On 9/25/13 11:39 PM, Malcolm Cohen wrote:
> >
> > 1. I do not feel it is necessary or even particularly desirable to
> > attempt to "decide" the syntax before the meeting. Discussion is fine
> > and good, but decision is out of the question.
> >
> > 2. The "EXTERNAL,ONLY::" suggestion strikes me as being considerably
> > worse than every alternative.
> >
> > 3. I would have thought Dan was suggesting "EXPLICIT :: EXTERNAL";
> > violating the convention that :: introduces a list of names or other
> > user-defined entities is certainly a minus point. A single colon
> > would not fall foul of this convention though.
> >
> > 4. Dan's thought that we might want to make it capable of handling
> > future conceivable extensions is well taken. I think that using
> > parentheses might be better than using colon or double-colon though, e.g.
> > "EXPLICIT(<explicit-item-list>)" or "NO IMPLICIT
> > (<explicit-item-list>)". Maybe "NO IMPLICIT(TYPE)" would be short for
> > "IMPLICIT NONE", and we could have "NO IMPLICIT(LEN)" to get rid of
> > the implicit character-length==1. (The latter is out of scope right
> > now of course.)
> >
> >
> > The ones I've seen proposed include
> >
> > IMPLICIT NOEXTERNAL
> > IMPLICIT, EXTERNAL :: NONE
> > EXTERNAL, NOIMPLICIT
> > EXTERNAL, NONE
> > NO IMPLICIT EXTERNAL
> > EXTERNAL, EXPLICIT
> > EXPLICIT[,] EXTERNAL
> >
> > If you are writing the paper, just put your top three into a straw
> > vote and list the others in a "rejected syntax" section, preferably with
> >
> > reasons.
> >
> > Cheers,
> >
> >
> >
> >
> >
> >
> > _______________________________________________
> > J3 mailing list
> > J3 at mailman.j3-fortran.org
> > http://mailman.j3-fortran.org/mailman/listinfo/j3
>
> --
>
> Cheers!
> Dan Nagle
>
>
>
>
>
>
> _______________________________________________
> J3 mailing list
> J3 at mailman.j3-fortran.org
> http://mailman.j3-fortran.org/mailman/listinfo/j3
More information about the J3
mailing list