On Jul 19, 2006, at 12:45 PM, Anselm R. Garbe wrote:

  programming in C have no access to data abstraction.  Which raises
another problem: 10kloc in what language? In the languages I use, I can get as much done with half the code of a C program, so does that
  mean they must only be 5kloc to qualify for 10kloc.org?

I doubt that I can do fewer data abstraction with C than with
any other language. What can't I do with C, but with another
language?

It's less a question of what you can do given an unlimited amount of time and so on. The question is more, I'd think, what can do you do in practice? Many languages offer a lot of things available from the start that C does not, which can go a very long way towards reducing the amount of code one needs to write. The problem isn't (just) that C offers fewer data abstractions. Rather, the problem with C is with the fundamental lack of expressiveness inherent to the language. I would think most who have spent some time with more "advanced" languages like Haskell can attest to the fact that some things are quite painful to do in C (or Java, etc) afterwards. C is a great fit for a lot of things, but so are many other languages. Just as in some cases C is vastly superior, as are others in their respective domains.

And I doubt that the SLOC metric is really
language-dependend, there is not much difference in 10 thousand
lines of bare Java code compared to 10 thousand lines of bare C
code (maybe the C code provides more functionality, because not
every global var is accessed with a useless getter and setter
method...).

Java is a very verbose language... you're picking the easiest fight and saying you might win. :-) If you were to put C up against, say, Factor (www.factorcode.org), I think it would lose quite badly. I'm generalizing, obviously.

- John

_______________________________________________
[email protected] mailing list
http://wmii.de/cgi-bin/mailman/listinfo/wmii

Reply via email to