Newsgroups: comp.lang.misc Path: utzoo!henry From: henry@utzoo.uucp (Henry Spencer) Subject: Re: HLLs vs asm (was Re: portable "asm") Message-ID: <1988Mar27.002601.17038@utzoo.uucp> Organization: U of Toronto Zoology References: <11702@brl-adm.ARPA> <243@eagle_snax.UUCP> Date: Sun, 27 Mar 88 00:26:01 GMT > >``C'' allows you to > >ignore types when you really want to, Well, not quite: what it allows you to do is to cheat the type system. You still have to be aware of it, so in a strict sense you aren't "ignoring" types, but you can get around the restrictions they impose. > > plus it allows access to the "bare > >metal", etc.) > > Are we talking about the same language? Probably. One of C's strengths -- and a major reason for its popularity -- is that it *does* let you get at much of the underlying machine if you really want to *and* understand your implementation in detail. It's not enough to understand C and the machine, you have to understand the mapping between them that the compiler provides. But once you do, you can use C to do most of the things an assembler can do. C insists on managing the stack and some of the registers itself, places constraints on what you you can do to the PC, and won't generate funny instructions for you, but these limitations often aren't a problem. Otherwise it opens the machine up pretty thoroughly, *if* you know what you're doing. -- "Noalias must go. This is | Henry Spencer @ U of Toronto Zoology non-negotiable." --DMR | {allegra,ihnp4,decvax,utai}!utzoo!henry