On May 21, 10:34 am, Dave Parker <[EMAIL PROTECTED]> wrote: > On May 20, 7:05 pm, Collin <[EMAIL PROTECTED]> 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".
So it seems like you're designing a language for non-programmers. That's good, I've never heard about anyone so interested in teaching programming for kids and non-programmers. But in that case, you shouldn't even be comparing it to Python. > 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). That stops being confusing after a few weeks of programming. (Actually, IMO, it's not confusing, but it's tricky because sometimes it's a hard typo to find. Though that will only be a syntax error in Python.) But again, that'll be great for the kids! ;-) > 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. Learning the symbols of a programming language is one of the first and minimum requirements to learning any particular programming language-- we call that the "syntax" of the language. > 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. So it seems that you got a great language for math teachers, non- mathematicians, non-programmers, and kids! (what a great arsenal of people...). Maybe if I have a kid someday I'll teach him Flaming Thunder! (just kidding, you prick). -- http://mail.python.org/mailman/listinfo/python-list