Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site ncoast.UUCP Path: utzoo!linus!philabs!cmcl2!seismo!harvard!think!mit-eddie!genrad!decvax!cwruecmp!hal!ncoast!grs From: grs@ncoast.UUCP (Gregg R. Siegfried) Newsgroups: net.lang.c Subject: Re: Proposal to add modules to C Message-ID: <716@ncoast.UUCP> Date: Mon, 27-May-85 04:02:35 EDT Article-I.D.: ncoast.716 Posted: Mon May 27 04:02:35 1985 Date-Received: Fri, 31-May-85 00:15:46 EDT References: <5606@utzoo.UUCP> Reply-To: grs@ncoast.UUCP (Gregg Siegfried) Organization: North Coast Xenix, Cleveland, OH Lines: 25 In article <5606@utzoo.UUCP> henry@utzoo.UUCP (Henry Spencer) writes: > >Because I want to ensure that no *deliberate* changes or references are >made!! That variable is a detail of the *implementation* of the module >in question, and outsiders are not entitled to use it because the >implementation is subject to change. There are some really ugly places >in Unix where programs *know* details of the implementation of stdio, >for example. Making things like that globally accessible essentially makes >them part of the specification of the module, hence very hard to change >even if they are later seen as serious mistakes. >-- I think a change like this would corrupt the language, rather than provide a way to implement hidden types. I found Modula-2 quite useful for doing just what you described. That there don't seem to be any Modula-2 compilers for Unix systems should be a small concern however. If there isn't one under construction, there *should* be. Gregg Siegfried ..decvax!cwruecmp!ncoast!grs [When all else fails...use assembler] "If you want to catch a lot of fish, you need a big net."