Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!nrl-cmf!ames!haven!purdue!decwrl!sun!pitstop!sundc!seismo!uunet!mcvax!cernvax!ethz!iis!heiser From: heiser@iis.UUCP (Gernot Heiser) Newsgroups: comp.lang.modula2 Subject: Re: Portable Oberon compiler Message-ID: <774@jupiter.iis.UUCP> Date: 7 Feb 89 20:42:00 GMT References: <772@jungfrau.UUCP> Reply-To: heiser@iis.ethz.ch (Gernot Heiser) Organization: Integrated Systems Lab., ETH Zuerich Lines: 27 Summary: Expires: In article <772@jungfrau.UUCP> marvin@jungfrau.UUCP writes: } [ stuff deleted ] } To avoid this, the portable Oberon compiler will have a }slight modification to the language: you have to add a compiler hint in }the definition part. It will then look like this (referring to the }example in the paper): } }TYPE Viewer = RECORD } width, height : INTEGER; } [8] } END; } }The number indicates the size of the record as it will be in the }implementation part. This looks like a real portability feast. Assuming this "hint" indicates the number of bytes to reserve for the record, this number is highly hardware (and probably compiler) dependent. Assuming the private part consists of two INTEGERs, the size of the number depends on the size (in bytes) of an INTEGER item. Is this _really_ preferrable to an visible "private part" (e.g. as done in Ada) where at least your code is portable? -- Gernot Heiser Phone: +41 1/256 23 48 Integrated Systems Laboratory CSNET/ARPA: heiser%iis.ethz.ch@relay.cs.net ETH Zuerich UUCP (new): heiser@iis.uucp CH-8092 Zuerich, Switzerland UUCP (old): {uunet,mcvax,...}!iis!heiser