Re: Spoken programming language
From: | Paul Kershaw <ptkershaw@...> |
Date: | Saturday, January 3, 2009, 15:27 |
----- Original Message ----
From: Gary Shannon <fiziwig@...>
> > From: Philip Newton <philip.newton@...>
> > How would you distinguish between past and non-past, for
> > example? (Or
> > is this a distinction you're not interested in making?)
> >
> > How would you modify nouns ("the red apple" vs.
> > "the green apple")?
> Just off the top of my head, let "red" be a function, called with the thing to be
> modified with redness: red(apple). Let tense be a function applying its
> modification to an action, which in turn applies the action to a thing: past(run(Johnny)).
Actually, there are already mechanisms for depicting adjectives in OOP. For instance, in PHP:
1. apple->color == red
2. apple->color != green
3. apple->color = red
In VB.net:
1. apple.color = red
2. apple.color <> green
3. apple.color = red
English equivalents:
1. The apple is red.
2. The apple is not green.
3. The apple reddened.
Note that PHP allows for a change of state disambiguation, while VB.Net doesn't.
Tense doesn't have an existing structure, but I would imagine if a programmer wanted
to describe tense, it would be done through relative shifts, treating time as a
scalar variable. To start a brief story in a modified OOP:
time.context = -2;
create(maiden);
about maiden;
.age < 19;
.age > 14;
.hair.color = #FFCC66;
.beauty.point10 = 9;
.married = false;
end about;
create(dragon);
about dragon;
.size.point10 = 9;
.temperament = const.fierce;
.temperament =+ const.greedy;
.location->town.radius.point10 = 5;
end about;
(Note: I've made some tweaks to standard OOP languages I'm familiar with. E.g., =+
means "append to existing matrix" while -> means "relative to" [not what it
means in PHP].)
English: Once upon a time, there was a very beautiful maiden who was young, but not too
young, with golden hair and no husband; there was also a fierce, greedy dragon
who lived not too far from town.
Even so, such a language wouldn't be something that I could see sentient beings
using, because it lacks flourish or flexibility. Computer languages don't have
much room for nuance. Perhaps it would be useful to illustrate the underlying
thought processes of a sentient droid, such as Star Trek's Commander Data.
Not a compelling natural language, in my view, but a computer language could
certainly be devised to be robust enough for full communication.
-- Paul
Replies