Subject: Shouldn't mapping inquiry subroutines be functions?

From: John Merlin <[email-masked]>
Date: Thu, 29 Apr 93 18:02:48 BST

It's occurred to me that the 'mapping inquiry subroutines'
really need to be functions.

The problem is that subroutines can't be used in declarations,
which rules out nearly everything one would want to do with them.
E.g. one might want to reconstruct the template to which a
dummy with transcriptive mapping was aligned, align locals 
to this template, perhaps using expressions involving the 
bounds and strides of the dummy's alignment, or distribute 
a local variable in a way corresponding somehow to the
distribution of a transcriptvely-mapped dummy.

The idea of an 'inquiry *subroutine*' seems quite odd
-- e.g. the F90 array inquiry intrinsics (SIZE, LBOUND, etc)
wouldn't be so useful if they were subroutines, would they?

Perhaps people with more experience of applications might like 
to comment?

                 Best regards,
                        John Merlin.

P.S. 
(i) A problem I remember being voiced about lots of 'small'
inquiry intrinsics, which I guess is what I'm proposing here,
is that of 'namespace pollution'.  However, I suggest this 
isn't really such a problem, as intrinsic names can be used
for other objects provided one doesn't need to use the intrinsic,
e.g. one can call a variable 'SIN' provided one doesn't need
the SIN intrinsic.

(ii) Also, the names of the mapping inquiry functions should be
*short*, so they can be used in expressions woutout too much pain, 
e.g.:

    SUBROUTINE s (x)
      REAL x (10)
!HPF$ DISTRIBUTE x *

      REAL a (10,10)
!HPF$ DISTRIBUTE a (DISTRIB (x), *)

-----------------------------------------------------------------------
John Merlin                                  email: [email-masked]
Dept. of Electronics and Computer Science,   tel:   +44 703 593368
University of Southampton,                   fax:   +44 703 593045
Southampton S09 5NH,  U.K.

---

From: [email-masked] (Chuck Koelbel)
Date: Thu, 29 Apr 1993 15:43:43 -0600

>really need to be functions.

I agree with Rob - regardless of technical merits, it's too late to make a
change this big (exercise for readers: estimate number of pages that need
to change).

                                                Chuck