Hi all, I'm a lurker and decided to stick my neck out a little. I, too started out as a hardware engineer. In this case real hardware - I did structural analysis of nuclear components. That was a few lifetimes ago. I'm doing software now.
I'm in agreement with the comments about Basic being conducive to sloppy programming. I want my compiler to do as much checking as possible, and that's not in line with Basic. I'm partial to C for embedded applications. The PIC architecture is truly atrocious. However, I've been using PICs for years and am familiar with the development environment. I'm not in a hurry to learn something else for casual use. The C compilers for PICs play games with creating a pseudo stack by reallocating memory. I'd hate to have to do that manually, but it seems to work alright when implemented by compiler. My actual contribution to the thread is a link to a free C compiler for PICs that works pretty well. I have been using the CCS compiler and switched to this one. www.sourceboost.com/ Bruce Raymond/ND8I Didier Juges wrote: > That is an interesting thread. So I feel like I have to add my $0.02 > > I am a casual programmer. I got into programming when I had to, because it > was, at one time, the path of least resistance for something I wanted to do. > I am otherwise an EE. Today, I spend my time 50/50 doing hardware design and > software design. Most my software is embedded software, with a few > exceptions. > > I am in the interesting position of having written (and re-written) > essentially the same desktop application under 4 different environments: > QuickBasic 4.5 (I can hear teeth clinching...), Microsoft QuickC 2.5 > (MS-DOS), gcc under Linux and Visual Basic 6.0, so I think I can compare the > environments and the results pretty well. > > While the visual appeal (eye candy) of the VB 6.0 version is undeniable, by > far the easiest to maintain (and with fewest bugs) is the gcc version. > Feature-wise, it matches the VB 6.0 version, but in different ways. It is > not as pretty (ncurses on an 80x24 terminal is NOT eye-candy) but it does > things that I have not even contemplated doing under VB. > > Basic (and Visual Basic) go out of their way to make things easy, and as a > result allow way too many bugs (I call them undocumented features). They are > great to quickly simulate a user interface, or for a quick tool, but you do > not want to write large programs with it. Even though I know people who have > done it successfully, I myself have not been successful with it. It is just > too hard to do the right thing with Basic, it encourages slopiness. > > Other than the PC, I write a fair amount of code for the 8051 and it's > variants, in C, using either the Keil compiler, or more recently the SDCC. I > have done a good bit of assembly for the Motorola 68HC05 way back (and the > 8008 even farther back), and I am very glad this is over. The Motorola > architectures are usually pretty well done, but assembly? Pleeeeaaase... > (actually not quite over yet, I have my version of the 10 MHz-PPS divider > originally by TVB, mine runs on an 8051 and is written in assembly too) > > In general, I find C programs easy to write and easy to maintain, and C > matches well with my hardware background. > > Didier KO4BB > > > _______________________________________________ > time-nuts mailing list -- [email protected] > To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts > and follow the instructions there. > > _______________________________________________ time-nuts mailing list -- [email protected] To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
