Prev: LM3478 design gets insanely hot
Next: 89C51ED2
From: Chris M. Thomasson on 13 Aug 2008 04:07 "Nick Maclaren" <nmm1(a)cus.cam.ac.uk> wrote in message news:g7u4e6$8k0$1(a)gemini.csx.cam.ac.uk... > > In article <aqook.200536$IP7.138587(a)newsfe16.ams2>, > "Wilco Dijkstra" <Wilco.removethisDijkstra(a)ntlworld.com> writes: > |> > |> It's certainly true the C standard is one of the worst specified. > However most > |> compiler writers agree about the major omissions and platforms have > ABIs that > |> specify everything else needed for binary compatibility (that includes > features > |> like volatile, bitfield details etc). So things are not as bad in > reality. > > Er, no. I have a LOT of experience with serious code porting, and > am used as an expert of last resort. I hope you get paid well! Seriously. > Most niches have their own > interpretations of C, but none of them use the same ones, and only > programmers with a very wide experience can write portable code. > > Note that any application that relies on ghastly kludges like > autoconfigure is not portable, not even remotely. And the ways > in which that horror is used (and often comments in its input) > shows just how bad the C 'standard' is. Very often, 75% of that > is to bypass deficiencies in the C standard. > > A simple question: have you ever ported a significant amount of > code (say, > 250,000 lines in > 10 independent programs written > by people you have no contact with) to a system with a conforming > C system, based on different concepts to anything the authors > were familiar with? I have. > > > Regards, > Nick Maclaren.
From: Nick Maclaren on 13 Aug 2008 04:12 In article <wzwok.22430$KZ.16734(a)newsfe03.iad>, Chris M. Thomasson" <no(a)spam.invalid> writes: |> |> > Er, no. I have a LOT of experience with serious code porting, and |> > am used as an expert of last resort. |> |> I hope you get paid well! Seriously. Not in this market-driven world of ours! Very, very, few technical people do - at least compared with comparable people in marketing or the adminisphere. Regards, Nick Maclaren.
From: Martin Brown on 13 Aug 2008 05:46 Terje Mathisen wrote: > Martin Brown wrote: >> Agreed. I have lost count of the number of places that have looked >> awfully hurt when I ran static testing software against their >> production codebase and found lots of latent bugs, unused variables >> and unreachable dead wood code. I reckon some C programmers take it as >> a challenge to add random casts to parameters until the code compiles. > > The next stage is to run a dynamic testing suite as a wrapper around the > program: > > I used to use BoundsChecker which knows about most of the Win32 APIs, it > was amazing how many bugs, errors, and just bogus api usage it would > catch, even when running against very expensive, but quite simple > applications like accounting packages. :-( Agreed. Boundschecker was an impressive piece of work. As were various of the post mortem debuggers that practically guaranteed that you would find the root cause of a crash on any user site. But you have to use the tools in the right order. It is crazy leaving it to customers to find bugs that could be found by using the right tools. The ship it and be damned culture we have now is most irritating. Vista is sufficiently bad that Intel will not deploy it. http://www.theinquirer.net/gb/inquirer/news/2008/06/23/intel-dumps-vista IMHO Excel 2007 is even worse Regards, Martin Brown ** Posted from http://www.teranews.com **
From: krw on 13 Aug 2008 07:44 In article <g7u51v$a35$1(a)gemini.csx.cam.ac.uk>, nmm1(a)cus.cam.ac.uk says... > > In article <wzwok.22430$KZ.16734(a)newsfe03.iad>, > Chris M. Thomasson" <no(a)spam.invalid> writes: > |> > |> > Er, no. I have a LOT of experience with serious code porting, and > |> > am used as an expert of last resort. > |> > |> I hope you get paid well! Seriously. > > Not in this market-driven world of ours! Very, very, few technical > people do - at least compared with comparable people in marketing > or the adminisphere. What do you consider "paid well"? -- Keith
From: Bernd Paysan on 13 Aug 2008 07:49
Martin Brown wrote: > It might be an interesting academic study to see how the error rates of > hardware engineers using VHDL compare with those using Verilog tools for > the same sorts of design. The latter I believe is less strongly typed. Well, first of all, Verilog has way less types. There are only bits, bit vectors, 32 bit integers, and floats. You can't use the latter for synthesis; usually only bits and bit vectors are used for register data types. My experience is that people make way less errors in Verilog, because it's all straight-forward, and not many traps to fall in. E.g. a typical VHDL error is that you define an integer subrange from 0..F, instead of a 4 bit vector, and then forget to mask the add, so that it doesn't wrap around but fails instead. My opinion towards good tools: * Straight forward operations * Simple semantics * Don't offer several choices where one is sufficient * Restrict people to a certain common style where the tool allows choices -- Bernd Paysan "If you want it done right, you have to do it yourself" http://www.jwdt.com/~paysan/ |