Does turtle graphics have the wrong associations?

Robert Maas, http://tinyurl.com/uh3t seeWebInstead at rem.intarweb.org
Fri Nov 20 05:35:47 EST 2009


> > My proposed no-syntax
> > IDE *also* gets rid of the need to bother with any programming-language
> > syntax. I've been proposing it for years, but nobody has shown any
> > interest
> From: Steven D'Aprano <st... at REMOVE-THIS-cybersource.com.au>
> I'm interested. No-syntax IDE? How is this even possible?

I guess you missed what I previously posted. The basic idea is that
you start with test data, and you use menus to select appropriate
data-processing actions to perform on that data. For example, you
manually key in a file name containing test data, or copy and paste
that same file name. Then you select "open file by that name" or
"load all lines from file by that name" etc. from a menu. If you
just opened the file, you now have a stream of input, and you can
select to read one line or one s-expression or one character etc.
from that file. After loading the whole file or one unit of data,
you now have some *real* data to work from. For example, with a
line of input, you might break it into words.

Caveat: When I said "no syntax", I mean no programming syntax, no
syntax to indicate function calls or variable assignment etc. You
still must deal with visual representation of strings and integers
and other essential data objects, which in a way may be considered
to be syntax. But if you want, you can avoid *all* syntax, even for
data, by drawing a *picture* of the individual bits. For some
low-level machine-language training, or boolean algebra lessons,
this might actually be preferable to Arabic numerals and English
letters to represent data values. Seeing a *picture* of something
that looks like a paper tape seems more binary-friendly than seeing
arabic digits "0" and "1" in rows across a page, when studying
operations upon boolean values or bitmasks.

Now if you don't like the burden of navigating the multi-level
menus, a search engine can be available, whereby you key in
keywords for the name of some data-processing operation you either
saw before or a name you can construct in your mind based on naming
conventions.

The extreme case of search engine would be if English-language
pseudo-code can be automatically converted into a very short menu
of most likely data-processing operations. I actually am seriously
considering doing NewEco software development by this means.
Basically I contract people to brainstorm with me in a Delphi
fashion to create the toplevel design of a new computer algorithm,
then we do top-down break into pieces, and continue top-down
break-down as far as it takes until the search engine recognizes
some step as something it already knows how to do.

> The only way I can think of is some sort of wizard interface.
> E.g. instead of having to remember the syntax for a slice, you
> click the "Slice" button and the computer prompts you to enter
> some combination of start, end, step, then generates the syntax
> [a:b:c] for you.

Yeah, it'll be vaguely like that in some ways. For major data,
we'll have the data first, all parameters to the next function to
apply, and *then* we select what function to call on those
parameters. But for minor parameters, we might allow you to choose
the function before filling in the minor-parameter slots. For
example, to select the nth character of string, we might have both
the string and the integer N before we select the NTH function, but
if N is a constant we might instead have just the string and select
the NTH function and fill in the constant N. With the pseudo-code
translation, some of the constant parameters might be apparent in
the English. For example, we have a string, and we say "select the
second word" (actually that's almost HyperTalk, the scripting
language of HyperCard on Macintosh computers), at which point the
constant parameter 2 would be supplied from the word "second" in
the English.



More information about the Python-list mailing list