Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site ucsfcca.UUCP Path: utzoo!watmath!clyde!burl!ulysses!ucbvax!ucsfcgl!ucsfcca!dick From: dick@ucsfcca.UUCP (Dick Karpinski) Newsgroups: net.arch Subject: Tagged architectures Message-ID: <412@ucsfcca.UUCP> Date: Fri, 20-Sep-85 19:14:09 EDT Article-I.D.: ucsfcca.412 Posted: Fri Sep 20 19:14:09 1985 Date-Received: Sun, 22-Sep-85 23:55:24 EDT References: <796@kuling.UUCP> <1713@orca.UUCP> <1599@peora.UUCP> <335@ihlpl.UUCP> <2384@uvacs.UUCP> Reply-To: dick@ucsfcca.UUCP (Dick Karpinski) Organization: UCSF Computer Center Lines: 28 In article <2384@uvacs.UUCP> mac@uvacs.UUCP (Alex Colvin) writes: > >I'm still looking for a machine that will trap references to uninitialized >data. Arthur Sale (of Pascal Validation Suite fame) wrote a paper about the proper use of Tag-6 in the Burroughs (sp?) 5500 and successors. That flavor of tag (among 8) allows the item to be passed to a subroutine but not used in expressions. Only assignment to it is permitted. Tagged architectures are very tidy, and with the ever decreasing cost of memory, they become even more attractive. A few bits and a little support with comparators in silicon lets you catch very many otherwise obscure bugs in quite conventional programs. Compilers get involved but in many ways, the tags help in avoiding other kinds of run time tests. In silicon and in parallel means the cost is reduced to a few square microns and a few micro-watts. Given support by the compiler, even arrays of Booleans can be spread out into words for checkout purposes to make use of the tags. I have neve seen this done. Dick -- Dick Karpinski Manager of Unix Services, UCSF Computer Center UUCP: ...!ucbvax!ucsfcgl!cca.ucsf!dick (415) 666-4529 (12-7) BITNET: dick@ucsfcca Compuserve: 70215,1277 Telemail: RKarpinski USPS: U-76 UCSF, San Francisco, CA 94143 Brought to you by Super Global Mega Corp .com