Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
01/25/11 20:54
Modified:
  01/25/11 20:57

Read: times


 
#180792 - Yes. Fight.
Responding to: ???'s previous message
It's been some time and I am craving for some GOOD flamewar... ;-)

Neil Kurzman said:
It is all about time. The Time to be a productive C Programmer is less then the Time it take to be equally skilled ASM Programmer.

This is a very often quoted statement in favour of C in the C/asm flamewars, but I don't think this is true, at least not universally.

And I don't think there is a relevant study supporting this. I know that there are studies comparing "productivity" (whatever that might mean) in various languages including asm, but I believe all of them are related to the "big" computers (and were performed around the PDP-11 era).

Remember, we are here still talking 8051, a small 8-bit microcontroller with very limited resources. And let me add, that the times when complex designs were based around 8051 used as a general-purpose microprocessor rather than microcontroller (out of necessity/cost) are over.

Also note, that none of us are to tell, based on personal experience, that a C programmer is more productive or what. ALL of us DO have the asm background the novices don't have anymore.

Neil Kurzman said:
While you can turn out an ASM Program as quickly as a C programmer [...]
Not only I. Given adequate training, I believe Joe The Average Programmer can. Again, in the realms of 8051.

And let's drop the "turn out", as it too closely resembles "churn out (code)". The only relevant outcome of the programming process is a working program. And to achieve that, more than just "turning" is needed, and all those steps are the same or similar for all languages: problem analysis, program design, testing and debugging. The "turning" is only a fraction of the time.

(I hope nobody will come up with the ridiculous argument of "doing math in C is faster" - we all know what the word "library" means, right?)

Neil Kurzman said:
I will assume the your code will be faster and smaller. maybe it fits into the next smaller chip.
This is again an argument from the wars, in favour of asm, and is completely wrong as it completely misses the point, and is then turned around by the C fans.

Writing in asm (as opposed to C) is much more about retaining full control. In the debugging phase, that might prove a far better productivity booster than the ability to "turn out" code faster in C. Ever been caught by surprise by how the compiler understood "volatile"? Being stunned by overhead of an ISR prologue/epilogue? Atomicity issues in view of code reordering, anyone?

Don't get me wrong again. I don't say asm is going to salvage the 8-bitters or what. I just say, the "C is better", without context, is a gross overstatement.

JW


List of 58 messages in thread
TopicAuthorDate
"standard syntax" of '51 assemblers            01/01/70 00:00      
   Use C            01/01/70 00:00      
      Use C - prudently            01/01/70 00:00      
         I hate C            01/01/70 00:00      
            Fight!            01/01/70 00:00      
            Time in the Trade            01/01/70 00:00      
               I'd submit that there are "gotcha's"            01/01/70 00:00      
                  The tools are better for HLL            01/01/70 00:00      
                  Gotchas!            01/01/70 00:00      
               Yes. Fight.            01/01/70 00:00      
                  why fight?            01/01/70 00:00      
                     that are still language-agnostic issues            01/01/70 00:00      
                        to Jan and others            01/01/70 00:00      
                           personal experience            01/01/70 00:00      
                  HLL productivity            01/01/70 00:00      
                     show me the proof            01/01/70 00:00      
                        Productivity article            01/01/70 00:00      
                           Tautologies!            01/01/70 00:00      
                              What's up with that???            01/01/70 00:00      
                           interesting but irrelevant            01/01/70 00:00      
                              Why is that irrelevant?            01/01/70 00:00      
                                 I think part of the confusion stems from this ...            01/01/70 00:00      
                                    which packages have you seen????            01/01/70 00:00      
                                       not those in recent history            01/01/70 00:00      
                                          I don't think that's true?            01/01/70 00:00      
                                             Common that consultants have commercial compilers            01/01/70 00:00      
                                                Who benefits?            01/01/70 00:00      
                                             Why would they buy that product at all?            01/01/70 00:00      
                                                So You are Niche            01/01/70 00:00      
                                          look at the link in my post above            01/01/70 00:00      
                                             Technology front            01/01/70 00:00      
                                                Richard doesn't exactly follow the technology front....            01/01/70 00:00      
                                                   and doesn't let that stop him ....            01/01/70 00:00      
                                                      Just because the paint is dry doesn't mean it won't work            01/01/70 00:00      
                                                   Perhaps not ...            01/01/70 00:00      
                                                Technology front? In '51 asm?            01/01/70 00:00      
                              again ... I have to agree            01/01/70 00:00      
                                 as usual, Richard            01/01/70 00:00      
                                    all you have to do is to read the whole message            01/01/70 00:00      
                        Do you test your code?            01/01/70 00:00      
                           sure I do            01/01/70 00:00      
                              What you can do ...            01/01/70 00:00      
                                 sw test harness            01/01/70 00:00      
                                    I don't know about yours, but mine can do that ...            01/01/70 00:00      
                                       Why didn't you read?            01/01/70 00:00      
                                          Well, I have to admit ...            01/01/70 00:00      
                                             You are forgetting memory variables in state machines            01/01/70 00:00      
                                                I think you're going over the top.            01/01/70 00:00      
                                                   Stop and think before you write            01/01/70 00:00      
                                                      Footnote about code coverage            01/01/70 00:00      
                                                         I agree with the principle, but not with the range            01/01/70 00:00      
                                                            Lucky you            01/01/70 00:00      
                                                               where you sit determines what you see            01/01/70 00:00      
                                                                  when seeing too little - get a chair to stand on            01/01/70 00:00      
                                                                     I'm not on board with all of that            01/01/70 00:00      
                                                                        I know, lifebuoy needed            01/01/70 00:00      
                  I have to agree            01/01/70 00:00      
            As I've often said ...            01/01/70 00:00      

Back to Subject List