There was interesting work done in the 70s exploring how non-
programmers described in English tasks
that, in principle, might be turned into programs (see e.g. Lance A.
Miller, Thomas Green, John C. Thomas).
The experiments showed that neither loops nor conditionals as often
employed in imperative and other paradigms
were "intuitive"  in the sense of intuitive implied.

Benedict du Boulay
School of Informatics
University of Sussex




On 23 Nov 2009, at 04:23, Richard O'Keefe wrote:

Does anyone know whether there's any empirical evidence either way
for the hypothesis
        programmers find a programming language or paradigm
        "intuitive" to the degree that it resembles what they
        learned first
?

Another mailing list I'm on just had a bunch of people shouting
that imperative programming was obviously more intuitive than
functional or logic programming.  Since they didn't seem to be
familiar with the fairly wide gap between a typical first-year
model of how an imperative language and what _really_ happens
(e.g., apparently non-interfering loads and stores can be
reordered both by the compiler and the hardware, loads from main
memory can be 100 times slower than loads from L1 cache, &c),
I found myself wondering if what they _really_ meant is "I learned
a simple model early on and find anything else different."

There's evidence that people find languages like Scheme and Erlang
(and even Prolog) easier if they haven't done conventional
imperative or OO programming before, but that's not to say that
they wouldn't have found those approaches easier still.



Reply via email to