From owner-sc22wg5@open-std.org  Tue Oct 20 13:15:44 2009
Return-Path: <owner-sc22wg5@open-std.org>
X-Original-To: sc22wg5-dom8
Delivered-To: sc22wg5-dom8@www2.open-std.org
Received: by www2.open-std.org (Postfix, from userid 521)
	id 1FDC8C178E4; Tue, 20 Oct 2009 13:15:44 +0200 (CET DST)
X-Original-To: sc22wg5@open-std.org
Delivered-To: sc22wg5@open-std.org
X-Greylist: delayed 963 seconds by postgrey-1.18 at www2.open-std.org; Tue, 20 Oct 2009 13:15:42 CET DST
Received: from ppsw-1.csi.cam.ac.uk (ppsw-1.csi.cam.ac.uk [131.111.8.131])
	by www2.open-std.org (Postfix) with ESMTP id 01F05C178E3
	for <sc22wg5@open-std.org>; Tue, 20 Oct 2009 13:15:42 +0200 (CET DST)
X-Cam-AntiVirus: no malware found
X-Cam-SpamDetails: not scanned
X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/
Received: from hermes-1.csi.cam.ac.uk ([131.111.8.51]:48636)
	by ppsw-1.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.151]:25)
	with esmtpa (EXTERNAL:nmm1) id 1N0CRD-00038c-3Q (Exim 4.70)
	(return-path <nmm1@hermes.cam.ac.uk>); Tue, 20 Oct 2009 11:59:35 +0100
Received: from prayer by hermes-1.csi.cam.ac.uk (hermes.cam.ac.uk)
	with local (PRAYER:nmm1) id 1N0CRD-0005c3-1c (Exim 4.67)
	(return-path <nmm1@hermes.cam.ac.uk>); Tue, 20 Oct 2009 11:59:35 +0100
Received: from [83.67.89.123] by webmail.hermes.cam.ac.uk
	with HTTP (Prayer-1.3.2); 20 Oct 2009 11:59:35 +0100
Date: 20 Oct 2009 11:59:35 +0100
From: "N.M. Maclaren" <nmm1@cam.ac.uk>
To: ukfortran@accu.org, sc22wg5@open-std.org
Subject: Standard intrinsics and coarrays
Message-ID: <Prayer.1.3.2.0910201159350.20914@hermes-1.csi.cam.ac.uk>
X-Mailer: Prayer v1.3.2
Mime-Version: 1.0
Content-Type: text/plain; format=flowed; charset=ISO-8859-1
Sender: owner-sc22wg5@open-std.org
Precedence: bulk

Am I along the right lines here?


We seem to have forgotten to specify how the intrinsic procedures may
be used as far as their use in unordered images is concerned - or, at
least, I can't find anything.  However, I don't think that there is much
of a problem.  13.5 paragraph 2 and Table 13.1 is the starting point,
and a lot of my proposal is already implied for those of classes E, ES
and PS by other wording.  Those of class A are already covered.

I have drafted the hard line on random numbers; it would be possible to
make the 'shall not' conditional on the processor dependence, but that
is messy.

Proposal:

In 13.5, Standard generic intrinsic procedures, after Table 13.1, add
the new paragraphs:

    EXECUTE_COMMAND_LINE shall not be be called in two unordered images.

    RANDOM_SEED shall not be be called in two unordered images, nor
    shall RANDOM_NUMBER and RANDOM_SEED be called in two unordered
    images.  It is processor dependent whether all images use a common
    generator or whether each image uses a separate one.

    CPU_TIME, DATE_AND_TIME, GET_COMMAND, GET_COMMAND_ARGUMENT,
    GET_ENVIRONMENT_VARIABLE and SYSTEM_CLOCK may be called in unordered
    images, but it is processor dependent whether the results they return
    are dependent on which image calls them.

    All other standard intrinsic procedures may be called in unordered
    images, subject only to their argument use following the rules in
    8.5.2.


Regards,
Nick Maclaren,
University of Cambridge Computing Service,
New Museums Site, Pembroke Street, Cambridge CB2 3QH, England.
Email:  nmm1@cam.ac.uk
Tel.:  +44 1223 334761    Fax:  +44 1223 334679

