But I will still have to make the change sooner or later. That is, unless we can get Darrel to add functions, procedures, better string handling and a few other features to the next version of PBP!
Charles Linquist
Charles, it is not about you saying that something is bulletproof or whether C (or other language) is better/worse than PBP (or anything else). It is about how easy/difficult it is to ensure (from a maintenance/validation standpoint) that the application/system is correct and how you can validate/test that is so.
From the software perspective, you have discovered that as an application becomes more complex, it gets increasingly difficult to maintain (make changes, additions or corrections). As you have mentioned, languages having structured elements (such as functions, procedures, local and global variables, etc.) go a long way in making it so. Also, features such as pointers, structures, members and unions are very useful when dealing with complex data structures. These features are available in languages such as C.
As for hardware, having the ability to do some form of in-circuit hardware debugging is extremely useful. The ability to single step through the firmware (at the source and/or debug level), set breakpoints, inspect memory and register values, change values on-the-fly, tracing, etc. can give you a view of what your system is actually doing that is difficult to impossible otherwise.
I only made the 'bulletproof' comment because although I write mostly in PBP, I have hired people that knew only 'C'. At first, they were totally convinced that a program written in BASIC was either very slow in execution, or lacked a lot of functionality, or was a "toy" for some other reason.
After a couple of months, they realized their opinions were wrong. All of them learned PBP at least to some extent.
I was trying to give a "pep talk" to all the other PBP coders out there.
My heartburn with PBP is that it is difficult to write reusable code, and also the lack of easy debugging.
Charles Linquist
Charles, if I (and even more importantly, my customers) are convinced that we have a serious (non-toy in your words), commercial grade MCU development toolchain that is considered bulletproof, I would not bother looking for anything else.![]()
Carefull rmteo,
One of your customers might see that you spend an awfull lot of time on this toy compiler forum, and wonder if you are really programming their equipment with the bulletproof C. Sure you try to convert others here to the dark side on a regular basis, but is that just to disquise the fact you really like PicBasic better?![]()
http://www.scalerobotics.com
Actually my customers don't give a hoot as to what I like - they only care about what they want. And as long as I give them what they want (on the terms and conditions we have mutually agreed upon) they really don't care what I do with my time - even if I decide to spend it on a toy compiler (your words) forum.
It all comes down to who is banging on the keyboard.
I write crappy code no matter what language I use. I imagine folks like Darrel and Bruce write great code no matter what language they use.
I also bet that Darrel and Bruce can write in Basic and blow even a good "C" coder out of the water.
So if you like B, C, or what ever... use it. What is good for one is not necessarily good for another.
Dave
Always wear safety glasses while programming.
Sorry Dave, coding ability (or lack thereof) isn't the issue here.![]()
Bookmarks