Learning With D

Russel Winder russel at russel.org.uk
Wed May 25 00:04:40 PDT 2011


On Tue, 2011-05-24 at 14:56 -0700, Walter Bright wrote:
> On 5/23/2011 11:30 AM, Russel Winder wrote:
> > Yes and no.  To those that "get it", it is simple and straightforward.
> > Experience shows that very few people actually "get it".  Syntax is a
> > factor but not the only one.  The very nature of the concept stumps some
> > people.
> 
> I suspect that those people who never get it are people who fundamentally do not 
> know how a von neuman architecture computer works. I came to C from writing 
> embedded systems in assembler language, and C was immediately obvious to me.

Or Harvard architecture for that matter :-)

I completely agree with the direction of you point but would put it
slightly more abstractly.  In order to be able to use a programming
language effectively and efficiently you must have an operational
semantics for the language.  This need not be the actual semantics of
the processor executing the code, it just has to be consistent with it
or else you are doomed to write broken code.

It is important for a programming language to have a short cognitive
translation distance between the syntax of the language and a high-level
operational semantics consistent with the machine semantics.

Sadly most programming languages are measured against compilation
metrics rather than cognitive ones, and whilst there are many factors
the same (regularity, general lack of exceptional cases, etc.) there are
some significant divergences (people can cope with exceptional cases
where compilers often cannot, cf. English!)

I find it a bit irritating that there isn't more collaboration between
programming language folk and cognitive science folk.  Programming
language folk often comment on cognitive issues, generally in the
absence of any knowledge of psychology and cognitive science, and the
psychology of programming folk generally end up doing their experiments
with outdated languages and on groups of people designed to give useless
results.

Sadly programming language development by natural selection fails to
work due to commercial vested interest, and lack of a adventurous spirit
on the part of the majority of practicing programmers.

I am beginning to rant, I will stop.
-- 
Russel.
=============================================================================
Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder at ekiga.net
41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel at russel.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <http://lists.puremagic.com/pipermail/digitalmars-d-announce/attachments/20110525/5db5e629/attachment.pgp>


More information about the Digitalmars-d-announce mailing list