Newsgroups: misc.education,comp.lang.misc,comp.lang.prolog
Path: cantaloupe.srv.cs.cmu.edu!rochester!rutgers!usc!math.ohio-state.edu!howland.reston.ans.net!newsfeed.internetmci.com!newsxfer.itd.umich.edu!uunet!in1.uu.net!munnari.oz.au!cs.mu.OZ.AU!munta.cs.mu.OZ.AU!winikoff
From: winikoff@munta.cs.mu.OZ.AU (Michael David WINIKOFF)
Subject: Re: Wanted: programming language for 9 yr old
Message-ID: <9528210.9545@mulga.cs.mu.OZ.AU>
Sender: news@cs.mu.OZ.AU (CS-Usenet)
Organization: Computer Science, University of Melbourne, Australia
References: <43v5qb$sb8@blackice.winternet.com> <44c8fh$6m3@onramp.arc.nasa.gov> <44da7v$d0f@stills.pubnix.net> <44lmqs$pap@news.asu.edu> <44rapn$1cr@dsinc.myxa.com>
Distribution: inet
Date: Mon, 9 Oct 1995 00:38:33 GMT
Lines: 59
Xref: glinda.oz.cs.cmu.edu comp.lang.misc:23349 comp.lang.prolog:13987

rgb@banjo.dsi.com (Randy Brown) writes:

>azmke@imap1.asu.edu writes:

>>Try Prolog.  It utilizes a different paradigm for programming.  Although 
>>it probably isn't much use for graphics.

>This is the second recommendation for Prolog in this thread.  I find this
>very disturbing in that it seems to suggest that predicate logic is
>somehow easier to understand than, say an imperative description, for our
>hypothetical nine-year-old.  I think this betrays a certain lack of
>empathy.  I've tried to show my little brother (13) a little predicate
>logic, and it's not basic.

Not at all ... one of the things about prolog is the duality between 
declarative and operational semantics.

It is quite possible to use prolog without a knowledge of mathematical logic.

Prolog can be explained quite simply in terms of facts and rules, or as 
a goal rewrite system.

The bottom line however, is that prolog has been succesfuly taught to primary
school children.

Michael

>I think it's much easier to explain imperative programming to

That's a subjective opinion.

One could argue that a simulation model would be even better.

Have a read of the Toontalk papers, they suggest that a concurrent
object oriented model (with the underlying formal model being
concurrent constraint logic programming) is a simple and suitable
model for a children's language.
(ftp://csli.stanford.edu/pub/Preprints/tt_jvlc.ps.Z or tt_jvlc.zip)

>a nine year old, because they already have some idea of what it means
>to follow directions.  You can probably teach them an impure functional
>language like scheme (which still has some idea of step, then next step,
>without the necessity of destructive assignment).  But I think you'd

Huh?

<begin flippant flamebait>
And are the lambda calculus and higher order functions any easier for
a 9 year old than predicate logic?
<end flippant flamebait>

>have a hard time teaching them prolog, at least until they've had
>11th-grade geometry.

>	-Randy

Michael
winikoff@cs.mu.oz.au

