When Lisp was introduced to us in 2nd year undergrad CS, the
professor promised it would be a relief to work with such an intuitive
language, which was designed to be written like we think. After a month or
so, most of us were wondering which planet does that "we" refer to.
Personally, I loved Lisp for its mathematical beauty, but that's probably
correlated to the fact that I the term "mathematical beauty" makes sense to
I think that if this discussion is to go beyond passion and poetics, we need
to unpack the notion of "intuition" in some manner of rigour. Intuition
exists: the spell checker recognises the word. But can it be quantified?
Perhaps we could break it down to components. I would argue that personal
experience, vernacular discourse and innate learning processes are some of
the constituents of intuition.
As for the last element, I could offer narrative (in the sense of Bruner) as
an innate mechanism of constructing and organising knowledge. Thus, I would
conjecture, a language with narrative qualities would be more intuitive.
Yishay Mor, Researcher, London Knowledge Lab
2009/11/23 Richard O'Keefe <o...@cs.otago.ac.nz>
> 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.