From owner-sc22wg5@open-std.org  Thu Jun 25 10:47:01 2009
Return-Path: <owner-sc22wg5@open-std.org>
X-Original-To: sc22wg5-dom7
Delivered-To: sc22wg5-dom7@www2.open-std.org
Received: by www2.open-std.org (Postfix, from userid 521)
	id 66234C76BBF; Thu, 25 Jun 2009 10:47:01 +0200 (CET DST)
X-Original-To: sc22wg5@open-std.org
Delivered-To: sc22wg5@open-std.org
Received: from ppsw-0.csi.cam.ac.uk (ppsw-0.csi.cam.ac.uk [131.111.8.130])
	by www2.open-std.org (Postfix) with ESMTP id AD56EC4596C
	for <sc22wg5@open-std.org>; Thu, 25 Jun 2009 10:46:34 +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-2.csi.cam.ac.uk ([131.111.8.54]:40324)
	by ppsw-0.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.150]:25)
	with esmtpa (EXTERNAL:nmm1) id 1MJkbI-0002d6-2P (Exim 4.70) for sc22wg5@open-std.org
	(return-path <nmm1@hermes.cam.ac.uk>); Thu, 25 Jun 2009 09:46:32 +0100
Received: from prayer by hermes-2.csi.cam.ac.uk (hermes.cam.ac.uk)
	with local (PRAYER:nmm1) id 1MJkbI-0003YL-Ng (Exim 4.67) for sc22wg5@open-std.org
	(return-path <nmm1@hermes.cam.ac.uk>); Thu, 25 Jun 2009 09:46:32 +0100
Received: from [83.67.89.123] by webmail.hermes.cam.ac.uk
	with HTTP (Prayer-1.3.1); 25 Jun 2009 09:46:32 +0100
Date: 25 Jun 2009 09:46:32 +0100
From: "N.M. Maclaren" <nmm1@cam.ac.uk>
To: sc22wg5 <sc22wg5@open-std.org>
Subject: Re: [ukfortran] (SC22WG5.4031)  (j3.2006)     LOCK/UNLOCK question
Message-ID: <Prayer.1.3.1.0906250946320.30895@hermes-2.csi.cam.ac.uk>
In-Reply-To: <20090625060203.E9891C3BB09@www2.open-std.org>
References: <4A38A3BB.9090208@nag-j.co.jp><4A38B917.8080202@llnl.gov>
 <4A391682.8060208@cray.com>
 <061720091627.18164.4A39196C000C05A4000046F422230703729B0A02D29B9B0EBF02019C050C079D0B020A08D2050C070B@att.net>
 <4A3930E3.8070505@cray.com>
 <061720091851.25112.4A393B4100015BA20000621822228869349B0A02D29B9B0EBF02019C050C079D0B020A08D2050C070B@att.net>
 <4A397E50.9010406@nag-j.co.jp>
 <Prayer.1.3.1.0906221229130.26720@hermes-2.csi.cam.ac.uk>
 <4A3F9897.8010103@llnl.gov>
 <4A3FA25D.1050507@cray.com>
 <4A3FF921.9070703@llnl.gov>
 <20090622221248.1FEF4C178E5@www2.open-std.org>
 <20090623084602.88A3EC178E5@www2.open-std.org>
 <20090624020300.8EE77C178E5@www2.open-std.org>
 <20090625033421.31AAEC3BB09@www2.open-std.org>
 <20090625041351.94A5AC3BB09@www2.open-std.org>
 <20090625060203.E9891C3BB09@www2.open-std.org>
X-Mailer: Prayer v1.3.1
Mime-Version: 1.0
Content-Type: text/plain; format=flowed; charset=ISO-8859-1
Sender: owner-sc22wg5@open-std.org
Precedence: bulk

On Jun 25 2009, Malcolm Cohen wrote:
>Bill Long wrote:
>
>> What I do object to is Nick's frequent declarations that other 
>> programmers are hopeless and incompetent.
>
>I am truly surprised that you read his statements about certain things 
>being extremely difficult - so difficult that even the experts have 
>trouble with them - as being about other programmers' competency at all.

I, too, am truly surprised at that - especially as Van said the same
thing, and I pointed out that Hoare (one of THE big names in this area)
had come to the same conclusion.  Have you read Hoare's rationale for
inventing BSP?

The reasons that I said that it is error-prone is that it is too easy to
write code that has a slightly more complicated temporal structure than
you can analyse in your head, and there are essentially NO tools for
detecting errors and analysing failures.  A few will help with deadlock,
but none will help much with complicated livelock, and none will help at
all with the common mistake of assuming that A is ordered before B
because of dependencies, when there is an unexpected path that isn't
ordered.

In my experience, most exports discover such errors only when porting
their 'working' programs to a new system that has radically different
properties than the ones they have used before.  So programs that use
system-specific communication code or are used on only a few systems
often have such bugs lurking in the undergrowth.


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

