I don't really think that
make x x + 1 is better for kids
First reason: the programs becomes less readable.
With : or " in front of variables it is very easy to search the variable in the text.
Second reason: That make more confusions.
The first x is used as a name the second means the value of the name. The same writing
for different things is more a source of confusion.
The kids have to learn that a word is used in three different situations:
As a verb , that is to express doing something.
with neither quote or :
As a word, made of a row of characters.
with quote
As the name of something it is representing.
with :
The difficulty is not in the symbols or the way to represent those ideas but the
ideas themselves.
So when a kid uses the symbols correctly that means
he has understood the semantic of the things.
If you want to do some change to logo, that is to accept the correct writing:
to "foo but keeping the usual one to foo.
but it is not very usefull,while the rest of the line should be changed too.
The correct title line should be.
to "foo "x "y [z 5]
fuction to using:
name of function to be defined : "foo
name of local variable: "x
name of local variable: "y
name of local optional variable initialized to 5 : z
(couple name value)
But the meaning that :x is a variable is so strong that
we have a symbolic representation of a variable in the title line with :x
Which does'nt mean the value of x but represent the
idea that we have a variable here.
For the teachers, with young children, we don't speak of variable so to foo allow
to build procedures without bothering with quote.
WE teach something not exact but usefull , one day the kids will learn more , use
variables and quotes it's time to be more exact and change the aproximative ideas.
Just for that day it will be nice to be able to write the correct title line.
That is constructivism !
P_A Dreyfuss
This is the answer to :
>Please reply to Charles Hixson <charleshixson@earthling.net> or
>logo-l@gsn.org NOT logo-list@gsn.org or me.
>
> -John-
>--Message below re-posted by <jstclair@omsd.cerf.fred.org>
>Date - Fri, 06 Mar 1998 10:43:16 -0800
>From - Charles Hixson <charleshixson@earthling.net>
>To - jcstclair@omsd
>Subject - Re: Punctuation (was: what is logo useful for anyways?)
>Usenet: comp.lang.logo
>------------------
>Post Usenet mail to comp-lang-logo@ucbvax.berkeley.edu
>------------------
>
>If you want to make one change to Logo, my vote would be for a one
>character abbreviation for <<Make ">>, i.e., a character that one
>prefixes to a variable INSTEAD of a dbl-quote, which includes the
>meaning of Make. This wouldn't break anything (or at least, very
>little).
>
>Brian Harvey wrote:
>>
>> Geoff Stilwell <gds@globalnet.co.uk> writes:
>> >I think this is one of the hardest things to explain to children. I usually
>> >use the idea of the variable being a box and "size is the name of the box
>> >and :size is the box's contents or the value in the box.
>>
>> In Scheme it'd be (SET! SIZE (+ SIZE 1))
>>
>> You have to get used to prefix notation (+ SIZE 1) instead of size+1,
>> and you have to get used to full parenthesization (none of the parentheses
>> are optional) but no quotes or colons for things like this.
>>
>> Some days I think we should give up on Logo and switch to Scheme!
>> (But other days I remember that I like dynamic scope and the ability
>> to construct variable names inside the program.)
>>
>> I can imagine ways in which we could change Logo semantics to try to get the
>> best of both worlds. Instead of named variables we'd use named procedures
>> whose return value is an unnamed variable. Then we'd make a rule that when
>> a procedure is given a variable as the value of an input, it automatically
>> retrieves the value of the variable, except for MAKE. So we could say
>> MAKE SIZE SIZE+1
>> and the right thing would happen. If you want to compute the first
>> input to MAKE, you'd have to say something like
>> MAKE RUN (WORD "A "B) 5
>> which would have the same effect as
>> MAKE AB 5
>>
>> But at this point I'm afraid any such major change in Logo would do
>> more harm than good. It'd break a lot of old Logo programs, and
>> unless all the Logo implementors agreed to do it at once, it'd make
>> even more trouble for people trying to translate one dialect to
>> another than they have already.
>>
>> Another option would be to add a new mechanism in parallel with
>> the old mechanism, to minimize breaking programs. So we could
>> add a special form
>> NEWMAKE SIZE 5
>> that would be translated into
>> DEFINE "SIZE [[] [OUTPUT 5]]
>> Then if you later say
>> NEWMAKE SIZE SIZE+1
>> it'd be translated into
>> DEFINE "SIZE [[] [OUTPUT 6]]
>>
>> We could perhaps even include procedure inputs by allowing
>> a notation like
>> TO SQUARE SIZE
>> instead of
>> TO SQUARE :SIZE
>> in which case a local procedure would be defined instead of a
>> local variable. (This would be a big change; there aren't any
>> local procedures in Logo now.)
>>
>> It would be an error, as in Logo now, to do anything that would
>> involve redefining a primitive. So no
>> TO PLURAL WORD
>> because that would try to make a local procedure WORD.
>>
>> I don't really like NEWMAKE (even aside from the ugly name, which
>> would need rethinking) because it's a special form -- it violates
>> the rule that all Logo procedure calls evaluate their inputs -- but
>> Berkeley Logo already has two special forms (TO and .MAYBEOUTPUT)
>> so maybe a third wouldn't be the end of the world.
>>
>> The worst thing would be that we'd end up with two camps of Logo
>> users, using two different notations, who'd have trouble reading
>> each others' programs.
>>
>> Is this worth pursuing? How much of a problem are quotes and
>> colons, really?
>
>--
>Charles Hixson charleshixson@earthling.net
>(510) 464-7733 or chixso@mtc.dst.ca.us
>
>
>
>
>
>
Free web-based email, Forever, From anywhere!
http://www.mailexcite.com
---------------------------------------------------------------
Please post messages to the Logo forum to logo-l@gsn.org. Mail
questions about the list administration to logofdn@gsn.org. To
unsubscribe send unsubscribe logo-l to majordomo@gsn.org.
Global SchoolNet Foundation -
Linking Kids Around the World!
Copyright GSN - All Rights Reserved
- Comments
& Questions
Visit GSN's
Global
Schoolhouse for more exciting learning resources!
Search our Site
-
Home