Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!mp.cs.niu.edu!rickert From: rickert@mp.cs.niu.edu (Neil Rickert) Newsgroups: comp.unix.wizards Subject: Re: Why not Multics? (was Re: BSD tty security, part 3: How to Fix It) Message-ID: <1991May3.183338.27695@mp.cs.niu.edu> Date: 3 May 91 18:33:38 GMT References: <00673160066@elgamy.RAIDERNET.COM> <1991May3.170518.14757@gdr.bath.ac.uk> Organization: Northern Illinois University Lines: 26 In article <1991May3.170518.14757@gdr.bath.ac.uk> P.Smee@bristol.ac.uk (Paul Smee) writes: > [ much discussion on Multics deleted ] >(The above, by the way, is a feature of PL/1 which I wish C had, as I >think it aids portability no end. You declare a variable in a form >which actually tells how many bits or digits of precision you need, and >it's up to the compiler to find you a piece of the machine big enough >to hold it. None of the worries about 'how many bits in an int', which >take up so much space in this group. You say 'I need 19 bits', and it's >up to the compiler to either find it, or tell you that's too big for >the implementation.) On the contrary, it seriously detracts from portability. Very few peoply really think about their algorithms to the extent that they will really decide that they need 19 bits. More likely they will define there needs in terms of what is needed to represent shorts or longs (18 and 36 bits in your example) and this reduces portability. Furthermore the semantics of PL/1 in its use of bit precision is such that even when a standard 32 bit word is used, FIXED BIN (31) is not equivalent to FIXED BIN (27) - just look at how division is handled. This means that a standard library package must have versions for every conceivable way that an integer could be reasonably defined. -- =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= Neil W. Rickert, Computer Science Northern Illinois Univ. DeKalb, IL 60115 +1-815-753-6940