From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,8c8bbb1419c8e81a X-Google-Attributes: gid103376,public From: kilgallen@eisner.decus.org (Larry Kilgallen) Subject: Re: Waiver question Date: 1997/05/02 Message-ID: <1997May2.164921.1@eisner>#1/1 X-Deja-AN: 239036176 X-Nntp-Posting-Host: eisner.decus.org References: <5kb8ol$18o@bcrkh13.bnr.ca> <1997May2.063334.1@eisner> X-Nntp-Posting-User: KILGALLEN X-Trace: 862606169/28368 Organization: LJK Software Newsgroups: comp.lang.ada Date: 1997-05-02T00:00:00+00:00 List-Id: In article , bobduff@world.std.com (Robert A Duff) writes: > Anyway, back to the point: Independent addressability does not imply > task-safety. So, if variables are not automatically protected by > locking/synchronization by default, it seems to me that they should not > have to be independently addressable by default. > > In keeping with the principle you describe, above, I think I would > prefer a language in which any variable that is potentially shared by > multiple tasks would have to be explicitly declared "shared". But to do A casual programmer would presume that if variable A is only modified by task AA and variable B is only modified by task BB then they are task-safe. This is not true if the variables share a longword on Alpha. Having variables default to not sharing a longword goes a long way toward eliminating this exposure. Regarding Robert Dewar's comment about DEC changing their mind with regard to byte instructions, I believe that was driven by the need to emulate code compiled for Intel machines which had never gotten recompiled specifically for Alpha. Market realities, rather than machine efficiency are at play. Larry Kilgallen