Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!usc!samsung!munnari.oz.au!comp.vuw.ac.nz!actrix!templar!jbickers From: jbickers@templar.actrix.gen.nz (John Bickers) Newsgroups: comp.sys.amiga.programmer Subject: Re: Lemmings - a tutorial Part V (last) Message-ID: <1974.tnews@templar.actrix.gen.nz> Date: 5 Apr 91 17:59:04 GMT References: <1991Mar31.003933.1483@mintaka.lcs.mit.edu> <1991Apr1.020748.26863@mintaka.lcs.mit.edu> Organization: TAP, NZAmigaUG. Lines: 58 Quoted from by mykes@amiga0.SF-Bay.ORG (Mike Schwartz): > fWhy isn't something like LightSpeed 'C' available for the Amiga? It > flies and generates awesome code. Back at university we had to use Lightspeed C for Macs, and some of us still wonder why we can't use SAS C the same way (the Macs had 1 floppy, 1M, and no HD, but we wrote largish programs on them without too much grief, complete with clickety-click compiler interface). > Why hasn't someone made the entire c.lib into a loadable library Some of the routines do exist in the OS somewhere. Most people can't be bothered using them. > Why don't 'C' compilers support linkerless usage? Why should they? If you only want to recompile parts of a project, linking is going to be necessary. And there's no significant difference between having the linker as part of the compiler or as a standalone program. > Why don't 'C' compilers know about the routines in the OS without > #pragmas? While we're at it, why not all the structures and other > things from the header files, too? What's wrong with #pragmas? C compilers typically do these things through #include files. Suppose I wanted to #define my own structures with the same names as the system ones, and therefore left out the appropriate #include files? It's for reasons like this that functions like "printf" and co. are functions, not C keywords, etc. > Why do 'C' programmers ask me whether I use: > MULU #17,d0 > instead of: > move.l d0,d1 > lsl.l #4,d0 > add.l d1,d0 > when it is basic programming normally done by assembler language > programmers (one of the oldest tricks in the book)? This is also olde to C programmers. In some cases one expects the omptimizer to do it (like v *= 2 is more readable to some than v <<= 1), but in cases where a programmer has to sit down and replace multiplications, even average programmers like myself know about this one. I read somewhere that SAS C (what I use) does these optimizations for powers of 2, so I tend to leave such things alone unless I want to be sure that they are happening, or the value is not a power of 2. > **************************************************** -- *** John Bickers, TAP, NZAmigaUG. jbickers@templar.actrix.gen.nz *** *** "Patterns multiplying, re-direct our view" - Devo. ***