What is an appropriate language for expressing initial stages of algorithm refinement?

Posted by hydroparadise on Programmers See other posts from Programmers or by hydroparadise
Published on 2012-09-04T20:44:08Z Indexed on 2012/09/04 21:50 UTC
Read the original article Hit count: 182

First, this is not a homework assignment, but you can treat it as such ;). I found the following question in the published paper The Camel Has Two Humps. I was not a CS major going to college (I majored in MIS/Management), but I have a job where I find myself coding quite often.

For a non-trivial programming problem, which one of the following is an appropriate language for expressing the initial stages of algorithm refinement?

(a) A high-level programming language.

(b) English.

(c) Byte code.

(d) The native machine code for the processor on which the program will run.

(e) Structured English (pseudocode).

What I do know is that you usually want to start your design implementation by writing down pseuducode and then moving/writing in the desired technology (because we all do that, right?) But I never thought about it in terms of refinement. I mean, if you were the original designer, then you might have access to the original pseudocode. But realisticly, when I have to maintain/refactor/refine somebody elses code, I just keep trucking with the language it currently resides in. Anybody have a definitive answer to this?

As a side note, I did a quick scan of the paper as I havn't read every single detail. It presents various score statistics, can't find where the answers are with the paper.

© Programmers or respective owner

Related posts about algorithms

Related posts about self-improvement