I can't speak for others but one of the main things I am looking at is NOT learning 4+ versions of 'C'. I want to eventually learn 'C' so I can do some programming for the palm pilot (take advantage of the IrDA port). I may also want to learn some 'C' (maybe visual 'C') for the desktop environment (maybe do IrDA programming there too or some test routines). Maybe even be able to do some 'C' one day in the future for Linux. I know that these 3 versions of 'C' are not going to be compatible with each other but they are at least simular (I least I think they are). What I don't want is to learn a 'C' language for the PIC that is dis-simular to the other 3. From what I understand, Hi-Tech would be more simular to these others than CCS would be (at least out of the box). Your right in that I don't have to use the built in functions of CCS but now a question based on that. 1) Am I to assume that if I don't use the built-in functions, I would have to write the functions myself from scratch or could I truely just have a creative set of defines and macros? 2) If I have to write functions for CCS, are these functions not already included in the higher price tag of Hi-Tech 'C'? 3) If I don't have to write functions for CCS to match the functions in Hi-Tech 'C', why is Hi-Tech still in business at the outrages prices they have? I agree that CCS is probally the best compiler in it's price range and if I wasn't trying to compare it with other 'C' packages that I would have to learn, I would probally buy it. The way I see it right now is that it comes down to a simple "cost of the libraries" decision. The question of what is worth more to me, good compiler with pre-written libraries or cheaper (but still good) compiler without the libraries. Again, someone please PLEASE tell me that I am completely confused and have no idea what I am talking about. Dale Botkin wrote: > Mark Newland said: > > > twice the functions at at a great price but as Gerhard said, it has a "... > very > > high non-compliance ..." compared to others. > > I just have to ask... compliance with what, exactly, and why? It's > compiling code for a very unique hardware environment, so one would think > that the addition of functions in support of that environment would be a good > thing. Remember that the mere fact that there exists a predefined function > for (for example) setup_adc() doesn't mean one is required to use it. I > could, if I wanted absolute portability, write defines and whatever else for > Compiler X in such a way that Compiler Y would compile the same code. Too > inconvenient, you say? Hmm... I felt the same way about writing all those > functions for Compiler Y before being able to do anything useful with it. > Six of one, half dozen of the other. > > As for porting old projects to a new compiler... I have tried that on > several occasions, not limited to PIC or C projects. I see it every day at > work, where extensive development is done with C, C++, Java, VB, Oracle and > other languages/platforms. I see code that isn't portable from one *version* > of the same vendor's compiler to the next (Sun V4 to V5 or V6, for example), > let alone from one vendor to another (like Sun's C compiler to GCC). Yes, in > theory one could write strictly to some spec like ANSI C. In theory, there > is no difference between theory and practice; in practice, there is a big > difference. In the end, when I finish a project I have taken to archiving > the project code along with the compiler that was used to make it work. > It's the only really safe way to maintain the code later if you need to. > > Anyway... having said that, I have still not noticed a terrible lack of ANSI > compliance with CCS, at least not that can't be eliminated with some typedefs > and such. I'm not an expert on such matters, but you won't find a PIC C > compiler that *is* completely ANSI compliant, I don't think a single one of > them allows recursion for a start. And I'm not trying to make an argument > for one compiler over another (though I make no secret of my favorite, and my > reasons). I just hate to see decisions made based upon flawed logic, or > those made that ignore the difference between theory and practice. > > Dale > (My neighbor drives a far more expensive car than mine. I'm convinced mine > is a far better choice than his. He's equally convinced his is better than > mine in every respect.) > > -- > http://www.piclist.com#nomail Going offline? Don't AutoReply us! > email listserv@mitvma.mit.edu with SET PICList DIGEST in the body -- http://www.piclist.com#nomail Going offline? Don't AutoReply us! email listserv@mitvma.mit.edu with SET PICList DIGEST in the body