Computer Science Canada

Turing: Why would you teach this?

Author:  Cinjection [ Thu Jun 09, 2005 8:56 pm ]
Post subject:  Turing: Why would you teach this?

Ok, i'm in gr.9 and for my gr.10 class next year i'll be programming in Turing so i thought i'd get a head start on it. I'm experianced in both VB and C++ so it's not exactly difficult. It is thought, in my opinion, very stupid. First of all the difficulty between VB and Turing is very basic. Exept in VB you can actually get pretty nice apps going quickly. Some of the Turing syntax is just a little....wierd. Like for example:

code:

if (cat = "cool") then
put "Cats are cool"
else if (cars = "cool" then
put "Cars are cool"
end if
end if

The 'end if's. I think Turing is the only language that requires you to put endless end ifs. I don't think Turing supports switch..case statments(not sure though) but that is a good alternitive to the end ifs. Also some of the things just strike me as wierd....like the assignment operator
code:

cat := "cool"

Again i don't think := is the best way to teach programmers to work properly. It's a bunch of these little things, ya know. Like no end of line character. Most languages use it and its not hard to put a ; at the end to practice good programming. So i ask, is Turing really a good language to teach in schools?

Author:  lyam_kaskade [ Thu Jun 09, 2005 9:05 pm ]
Post subject: 

I never thought so. Though not for the reasons you give. Syntax is different in every programming language, it's something students will have to get used to. Not all languages end statements/commands with a semicolon. Python, for example.

I just don't like Turing because it's licensed. A scripting language like Python would be easy to learn, as well as practical.

EDIT:
Also, this is the Turing Help forum. Not sure if this is the correct place for a discussion like this, but I don't know where else it would go...

Author:  Mazer [ Thu Jun 09, 2005 9:10 pm ]
Post subject:  Re: Turing: Why would you teach this?

Cinjection wrote:
Ok, i'm in gr.9 and for my gr.10 class next year i'll be programming in Turing so i thought i'd get a head start on it. I'm experianced in both VB and C++ so it's not exactly difficult. It is thought, in my opinion, very stupid. First of all the difficulty between VB and Turing is very basic. Exept in VB you can actually get pretty nice apps going quickly. Some of the Turing syntax is just a little....wierd. Like for example:

code:

if (cat = "cool") then
put "Cats are cool"
else if (cars = "cool" then
put "Cars are cool"
end if
end if

The 'end if's. I think Turing is the only language that requires you to put endless end ifs. I don't think Turing supports switch..case statments(not sure though) but that is a good alternitive to the end ifs.

You were actually doing it wrong. Could be written as:
code:

if cat = "cool" then
    put "Cats are cool"
elsif cars = "cool" then
    put "Cars are cool"
end if

Yes, Turing supports case, though I never much cared to use it.

Cinjection wrote:
Also some of the things just strike me as wierd....like the assignment operator
code:

cat := "cool"

Again i don't think := is the best way to teach programmers to work properly. It's a bunch of these little things, ya know. Like no end of line character. Most languages use it and its not hard to put a ; at the end to practice good programming. So i ask, is Turing really a good language to teach in schools?

Well if it makes you feel better you can add semicolons to the end of each statement (yes, Turing will accept this), but why should it be necessary for a language?

Oh, and no, Turing isn't a good language to teach in schools.

Author:  [Gandalf] [ Thu Jun 09, 2005 9:21 pm ]
Post subject: 

The thing you have to keep in mind is that most of the people this is being taught to have no idea about programming, so even this is hard for them. They need a language that is similar to english, but allows some programming environment so that the student can get used to it. There, as I am sure someone will point out, probably some better alternatives, but HoltSoft comes with a teaching package, deals for schools, and that kind of stuff. That's why I think that the people who don't know what they are talking about at school chose Turing.

Besides, then the student knows what they're up against. If they are clueless about Turing, then you know programming is just not for you.

Author:  wtd [ Thu Jun 09, 2005 9:23 pm ]
Post subject: 

As has been said, Turing is not a terribly good teaching language, but then, neither are the languages you've mentioned also "knowing", and not for the reasons you've mentioned.

Turing has an equivalent to "switch" statements, and actually a bit more flexible.

The ":=" operator has as much precedent in "serious" languages as "=" for assignment. In fact, there's a very good argument to be made for "=" being best used for equality tests.

In the end, though, this is syntax. It's a small thing to quibble over.

Author:  Drakain Zeil [ Fri Jun 10, 2005 6:19 am ]
Post subject: 

I'm not sure why you added a second endif, but whatever.

Turing is good for teaching the basics. If you want something less basic go do java, C, C++, or PHP/sql

Author:  StarGateSG-1 [ Fri Jun 10, 2005 11:03 am ]
Post subject: 

I think before you psot anymore opinion you should maybe learn the language, and ye sit shouldn't eb taught in school's but, I was peer tutoring a grade 9/10 programign and then had no clue what C++ was and didn't even understand it. this brings me to my next point, I can underatand that you know VB, but C++ at that age and understand it, I fine that hard to believe. Please feel happy to prove me worng, I just have never heard of someone at yoru age beening able to claim

Quote:

I'm experianced in both VB and C++

Author:  ZeroPaladn [ Fri Jun 10, 2005 11:26 am ]
Post subject: 

remind me again why i agree with you, stargate. i never even knew what programming was untill grade 10 Embarassed and i do NOt beleive that you know c++ off the back of your hand. not at that age. I know im flaming you but lying on a forums then dissing the programming language where you put the post is very low indeed.

EDIT

and i do beleive youve raped the TURING language there, buddy, cause your code is all bad.

Author:  Cinjection [ Fri Jun 10, 2005 2:19 pm ]
Post subject: 

It's just a bunch of these things. Like if you're going to teach OOP, why do it in Turing? It's like giving a bum the keys to a bank.To the dude who found it hard to believe i know both VB and C++, i have been programming in VB since i was 12 and i know quite a bit. As for C++, i've been doing bits and parts of it for months now. I've done classes, sturctures, all that stuff. I left off at MFC to play with Turing. At least i get to learn Java in Gr.11 and 12. My main point is that VB and Turing are both at about the same difficulty level. So why not teach the more practicle one?

Author:  wtd [ Fri Jun 10, 2005 2:39 pm ]
Post subject: 

Drakain Zeil wrote:
I'm not sure why you added a second endif, but whatever.

Turing is good for teaching the basics. If you want something less basic go do java, C, C++, or PHP/sql


All of the other languages you mention are nearly as bain-dead as Turing. C++ is vaguely interesting, but it's also a mess.

How about we specify that an interactive interpreter should be a requirement of a good programming language for education?

Author:  [Gandalf] [ Fri Jun 10, 2005 3:23 pm ]
Post subject: 

wtd, what langage do you like? ruby? pascal? ocaml? I don't know...'
Problem is, all those "bain-dead" languages are what's used.

I started programming in emm, grade 5, but I am still not all that well good. Then again, from grade 5-7or 8 I barely tried going anywhere with by 1337 PWNAGE BASIC SKILLZ Laughing

Author:  Cinjection [ Fri Jun 10, 2005 3:26 pm ]
Post subject: 

C and C++ own Turing anyday. In my opinion the only language better and faster then C++ is Assemble. Obviously im not recommending that teachers teach C++ or Assemble for an beginners course, but honestly, how hard is VB?

Author:  wtd [ Fri Jun 10, 2005 3:32 pm ]
Post subject: 

[Gandalf] wrote:
wtd, what langage do you like? ruby? pascal? ocaml? I don't know...'


"The more languages you learn, the more you realize they all suck."

Wink

[Gandalf] wrote:
Problem is, all those "bain-dead" languages are what's used.


Used by whom? Lots of people, yes, but then... lots of people use Ruby, Python, O'Caml, Eiffel, Haskell, etc.

[Gandalf] wrote:
I started programming in emm, grade 5, but I am still not all that well good. Then again, from grade 5-7or 8 I barely tried going anywhere with by 1337 PWNAGE BASIC SKILLZ Laughing


Exactly!

With all due respect to the students here... you're not going to be doing anything all that "useful" during your education. Learning languages that "will help me get a job" isn't all that important when you're not immediately looking for a job.

What is important is learning concepts. And yes, this means practically applying those concepts, and testing them with real code, so you can see that it actually does what the textbooks say it will. This is why it's important to have a language that makes it easy to dive right in.

Author:  [Gandalf] [ Fri Jun 10, 2005 3:32 pm ]
Post subject: 

Its not the "hard" part that matters, its the point that VB is no better than Turing especially for learning. There is also the fact that the school board already has this in their curriculum, and have had it for a long while.

*EDIT*
Quote:
"The more languages you learn, the more you realize they all suck."

ahh, I see Smile. I guess now we know why new languages keep being created.

Author:  wtd [ Fri Jun 10, 2005 4:23 pm ]
Post subject: 

[Gandalf] wrote:
Quote:
"The more languages you learn, the more you realize they all suck."

ahh, I see Smile. I guess now we know why new languages keep being created.


Yes.

Other bits of wisdom:

"It's better to be wrong, and know why, than to be right by chance."

"Don't learn what to do from those who have succeeded. As likely as not it has been a matter of luck. Learn what NOT to do from those who have failed. It's far more likely their circumstances arose from some logical progression of events."

Author:  MysticVegeta [ Fri Jun 10, 2005 9:00 pm ]
Post subject: 

Experienced in VB and C++ by 15 eh? dam i hate gifties (no offense Cervantes)

Lol I started programming when i was 13 but only some basic javascripts in flash mx Laughing lol

Came across turing in Grade 9 (15) and then next shot was at Java a couple of months ago, i didnt like it lol. So i moved to C++, I know basic syntax (arrays, loops, etc.) Found C++ easier for some really weird reason, I am still in grade 9 Sad but i plan to take engineering because programming i can do on my own Wink

Ok, I am really blabbing right now, i should shut up. Hey everyone can post their stories here lol

Author:  lyam_kaskade [ Fri Jun 10, 2005 9:32 pm ]
Post subject: 

MysticVegeta wrote:

but i plan to take engineering because programming i can do on my own


Wow! that's what i said when I applied to engineering

Anyway, I should probably add something to this discussion.
Java and C++ are both very difficult for beginners, so they're out. Open source-oriented scripting languages like Python and Ruby are out, because those can't be sold in a neat little teaching package.
VB doesn't support object orientation (source: Wikipedia), and since it's "Visual", it's not as effective for teaching programming fundamentals (not to mention it's not licensed by a canadian company, like Turing).

One famous dutch programmer once said (of BASIC):
Quote:
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration"--Edsger Dijkstra

That leaves Turing, I suppose.
Though we don't have to like it.

Author:  [Gandalf] [ Fri Jun 10, 2005 9:39 pm ]
Post subject: 

Quote:
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration"--Edsger Dijkstra

OMG!! I'm hopeless! Mentally mutilated beyond hope of regeneration! My brain just melted, it's the exposure to BASIC as my first programming language... Oh dear goo.. AAAAHHH!

Yeah... Just because its not a good language to learn, doesn't mean it kills you to know it Confused. Any language is a good introduction to the idea of programming.

Too bad my school only has* computer science after grade 10, forces your path... It's still pretty good though, I would have chose CompSci anyway. Still, I can't make my mind up if a computer engineering career would be better or a comp science one.

Author:  wtd [ Fri Jun 10, 2005 10:16 pm ]
Post subject: 

[Gandalf] wrote:
Too bad my school only have computer science after grade 10, forces your path...


Learn on your own. It's not that hard.

Author:  [Gandalf] [ Fri Jun 10, 2005 10:25 pm ]
Post subject: 

Bah! I don't make any sense this late at night...

Learn computer engineering on my own? It might get hard once you get into the more in-depth stuff. That's what I meant, my school only has computer engineering gr 10, comp science gr 11-12.

Sorry if I am not making sense Confused.

Author:  wtd [ Fri Jun 10, 2005 10:49 pm ]
Post subject: 

[Gandalf] wrote:
Learn computer engineering on my own? It might get hard once you get into the more in-depth stuff.


There's nothing you'll learn in high school that you can't learn on your own.

Pick a language, dive in, and absorb as much as you can. Then pick another language. Lather, rinse, repeat.

Once you pick a language, feel free to ask questions here. Questions are good. They are not a sign of stupidity. They just mean you're ignorant. As long as fix that ignorance it's fine.

Author:  c0bra54 [ Fri Jun 10, 2005 11:08 pm ]
Post subject: 

yeh like wtd was touching on .. a stupid person can't learn.. but an ignorant person can be taught... and chances are if you ae here on this msg board, then you do care somewhat, and therefore wil have some drive to do it... mmm... lather...

in my honest opinion, i htink turing is an incredible intor to proramming.. i meen, it can be used to teach decent programing fundamentals, like forewarding (just leanred) true object oriented with class and pointers... and it is also good for problem solving, like i find half the problem is not how to write the code, but how to make it run fast, in short amount of physical code, and to also solve the problem...

like i am trying to write a chess AI in turng (don't flame, i am gonna learn C# or java next) and half of my problem is how to write nice code, like for the moves instead of saying if piece tile = this then you cna move here here and here

say something like for Q that her x must equal her y or her x must euqal 0 or her y must = 0... therefore all of her moves are accounted for .. but it is nicer code.. and in any language out there, a bad programmer wil always be a bad coder, someone who writes crap code, that is to hard coded allows for no change and is to long (i hate long code)

Razz there's my 2 cents.. but ys i think Turing is an EXCELLENT intro to programming.... i sitll tihnk they should do flash or VB gr 9, then turing in 10, java in 11 and C++ in twelve.. this would REALLY prepare ppl for university.. but meh those r only my two cents...PS flams allowed and welcome Razz

EDIT: i don't have the english skills to proof read.. sry for spelling lol

Author:  Cinjection [ Sat Jun 11, 2005 8:05 am ]
Post subject: 

The main problem that i've heard about VB, is that it teaches very bad syntax rules and makes it harder to learn future languages. I personally think that's bullshit. If i went into C++, without knowing VB, i'd be lost beyond return. Oh and i wouldn't say i'm THAT experianced in C++ so don't thing i'm some programming god. I know some C++ and a lot more VB. Anyway i think i'll just sufer through that course for 1 semester, and then get into Java, which is actually fun. Oh and the point on how VB is Visual and doesn't teach things as well; Most languages programmers use extensivly are all visual (think:Visual Studio). Smile

Author:  MysticVegeta [ Sat Jun 11, 2005 8:34 am ]
Post subject: 

c0bra your final paragraph was so right. Our school used to have the same things. We had Grade 9 VB for enriched program. Grade 10 C++ for enriched program Grade 11 C++ for enriched program. And shift them 1 year later for normal program. We had Borland C++ but since our school is on a private server, many many many people made some "hacking" programs that could easily bypass our servers security, so they removed both of the languages Shocked Although we stil have VB6.0 compiler, they dont teach it anymore. C++ is removed. DAM! And it was 2 years before i came to high school!!!!!!!! BAH! Now i ask the Grade 11's, they are far smarter than i will be in grade 11 Sad But its a good thing i got into enriched program lol!

Author:  ZeroPaladn [ Sat Jun 11, 2005 8:55 am ]
Post subject: 

now im lost on the convo, once again Smile


: