Article on programming language adoption (x-post from /r/programming)
Tofu Ninja
emmons0 at purdue.edu
Thu Aug 1 09:15:10 PDT 2013
On Thursday, 1 August 2013 at 15:39:25 UTC, Dicebot wrote:
> On Thursday, 1 August 2013 at 15:01:39 UTC, Tofu Ninja wrote:
>> When every you are trying to optimize for speed you need to
>> always be aware of your bottle necks, for streaming video its
>> internet speed, for a CUDA application its main memory, for
>> coding its they keyboard.
>
> I don't buy it. In a daily programming actually writing code
> takes no more than 10% of time for me. 30% planning what needs
> to be done, 30% figuring out what some piece of code does, 30%
> debugging. Even full elimination of typing phase (literally,
> imagine some magic tool that directly translate your thoughts
> to code) wont be as useful as something that halves time for
> _any_ of three other parts. And static strong typing helps them
> all. As well as any compile-verifiable correctness.
>
> People that have bottlenecks in actually writing code must be
> genius and never make mistakes.
That is why I chose to say that it was a bottleneck in coding,
not in development. The amount of text required to code something
has effects on the things you mentioned, for instance having a
more verbose language can help prevent errors by making the
writer think about every thing he is writing, but can also cause
more errors as more code means more places for miss types.
Text amount can also effect code comprehension. For instance,
having a very wordy language can sometimes be hard to understand
as it is simply more for your brain to process. On the other hand
a very compact language can be hard to understand as their might
be to many assumptions and implicit information that the reader
my not have. Debugging kind of falls in this as well as it
requires you to fully comprehend what is going on to be able to
find the bug.
As for planing, I generally feel that this is much more language
agnostic(or maybe I should say syntax agnostic?) The only times
the specific language helps me plan is if their is some really
nifty feature that makes what I am trying to do much more
simple(like mixins or the simplicity of templates in D).
More information about the Digitalmars-d
mailing list