Python and Flaming Thunder

Collin collinyeung at shaw.ca
Wed May 21 21:06:06 EDT 2008


Dave Parker wrote:
> On May 20, 7:05 pm, Collin <collinye... at shaw.ca> wrote:
> 
>> Personally, FT is a bit meh to me. The way you issue your statements I
>> always think something is wrong, mainly because when I want to define,
>> say, x, in python I'd go:
>>
>> x = "whatever"
>>
>> Instantly noting that I defined x. While in Flaming Thunder I'd have to
>> type:
>>
>> Set x to "whatever"
>>
>> It just feels wrong.
> 
> Actually, it felt wrong to me when I first started working on Flaming
> Thunder because I've been programming for decades and have had all of
> the programming idioms burned into my brain.
> 
> But after getting input from children and teachers, etc, it started
> feeling right.
> 
> For example, consider the two statements:
> 
>      x = 8
>      x = 10
> 
> The reaction from most math teachers (and kids) was "one of those is
> wrong because x can't equal 2 different things at the same time".
> Many computer languages conflate "equality" with "assignment" and then
> go to even more confusing measures to disambiguate them (such as using
> == for equality, or := for assignment).
> 
> Plus, symbols are more confusing for people to learn about than
> words.  There are lots of people who are fluent in English, but
> dislike math.
> 
> So, I opted for a simple, unambiguous, non-mathematical way of
> expressing "assignment" which makes sense even to the non-
> mathematically inclined:
> 
>      Set x to 8.
> 
> That way, = can be reserved unambiguously and unconfusingly for the
> mathematical notion of "equality" -- because it's in their math
> classes that people learn what = means:
> 
> Set QuadraticEquation to a*x^2 + b*x + c = 0.


Then I guess the elementary school kids will use your FT system while we 
  will use our naturally burned-in sense of syntax from other 
programming languages, eh?

Not saying this as a negative or anything, I'm just saying that most of 
us have a habit, and it's not necessarily a bad nor good habit, of doing 
things the way most languages have them done. For example, x = 8 is 
extremely readable, to, I assume, most of us. Set x to 8, it takes some 
time getting used to. Why should we switch to a language that will take 
us time to get used and some more time to understand syntax when we 
already understand and can efficiently use our current languages?

It's like going to the middle of London and screaming: "HEY GUYS GUESS 
WHAT! I JUST INVENTED A NEW LANGUAGE AND IT'S VERY VERY EASY TO LEARN!" 
And the people who would try the language would find the way you do 
everything is very different from English, or their native language, for 
that matter. Best let sleeping dogs lie.

Collin



More information about the Python-list mailing list