I think the difference is that, if you want to do something potentially dangerous in pascal, you tell the compiler that you're doing something using explicit syntax, not something you could accidentally type..

in C++, it's much too easy to get confused with the pointer references/dereferences.. and write something which looks OK, but in fact is a pile of tripe... moreover, it appears to work for a while then the uninitialized pointer gets a different value assigned to it and the system goes haywire. (I've actually done this and wiped my Bios ops: )

It is possible to write very clean code in C++, but due to it's power and ease of misuse, it all too easily leads to bad code..
A good programmer will write good code because he/she knows what they're doing and treats the dangerous/powerful features with the respect they deserve.


Consider this:

C++ : Doomsday machine has a big red button on the top saying "Press me" The user unwittingly presses it and destroys the world. or, more likely, the user trips over his dog, hits the button with his forehead and destroys the world.

Pascal : Doomsday machine has a big red button on the top saying "Press me" but it's protected under a glass case requiring a key. the user tries to press it, but unless they have the key, they can't. Also, when their dog gets in the way, they trip over and hit the glass case.. the world is safe from accidental destruction.

Both are capable of making doomsday devices, both will do just as good a job as the other, it's just that with Pascal, if you destroy the world, it's because it's what you really wanted to do.

I think that too many beginners with C++ have given it a bad reputation as a hard and unforgiving language to learn. Which is a shame really. 'cos with a little discipline, it's not hard at all.


As for games development? 6 and 2 threes really. Both compile to fast code, both have access to rendering and physics libs.. it depends on what you're after.

if you want to write for a major games company, you're probably looking at C++.. just because for some reason, it's the industry standard.

If you're doing it for yourself or for your own firm, it's your choice.
Pascal can do almost everything C++ can do, it's just another language. You may find that you get your game up and running faster with Pascal if you like the language as you'll probably make fewer pointer mistakes, but then C++ does have the support advantage, something we're trying to address here... and have made significant progress with.

You just have to look at some of the games written using Pascal to appreciate it's power and the lack of limitations.

In the end, it's your call. But learning Pascal made me into a better programmer in other languages... including C++.