On Tue, 17 Oct 2006, Martin Coxall wrote:
>> Every language feature that reduces how much typing I have to do is a
>> tangible benefit to me. It eases stress on my body machine, and speeds
>> the delivery of my code.
>
> That seems a ridiculous thing to say to me. Time taken to type out
> code is not the limiting factor in your productivity.
>
> If you sacrifice readability, maintainibility, safety, extensibility
> or supportibility for a fewer characters, it's hardly a worthwhile
> tradeoff.
>
> Terseness is not a virtue. If it were, I'd be a perl programmer.
>
> Martin
i translated a c option parer. this one:
jib:~/shared/dmspnl_new/grid_ols > wc -l commandline.h commandline.c
67 commandline.h
699 commandline.c
766 total
it even uses getoptlong to reduce the busywork. in ruby it's about 40 lines.
it's been proven (many times - google it) that programmers write the about the
same number of lines of code per day regardless of the language, be it
assembler or ruby. so, given that it might take be something like 30 minutes
to produce a 40 line option parser in ruby, we can interpolate that the
equivalent c parser would take about two and half days to produce. that's
quite expensive if you ask me, espcially considering that there is no good
reason (speed for example) to parse options in c.
it's not the actual typing of the lines that takes so long - it's reasoning
over it. without even seeing the code i'm sure you'll have no trouble
believing that the ruby opt parser takes seconds to comprehend, while the c
one takes considerably longer - simply based on it's size.
and this point isn't even considering security faults, which have been shown
to scale linearly with tloc.
-a
--
my religion is very simple. my religion is kindness. -- the dalai lama