Hi Ryan,

Yeah, I understand. I mean it is taking me 10 times longer to write
Mysteries of the Ancients than it would in something like Python
simply because the language is so much more complex. When you think
about how many braces, brackets, and other syntax goes into a standard
C++ application it all adds up to extra time typing all of that where
in Python you can just double space and start your new function
without having to remember if you added enough right braces to the end
of your function to properly terminate that block of code.

All the same there are some things that just rilly turn me off about
Python. For example, the way the Python developers decided somewhere a
long the way not to use technical terminology and rename everything to
be Python specific. As someone who was trained professionally in
languages like C++, Java, etc it really gets me that instead of
calling object serialization by its technical name they call it
pickling. Instead of calling an array an array they have dictionaries,
lists, toupals, etc which just seems weird to me. So that's one reason
I said Python teaches people bad habits and would have to relearn
terminology and things like that if they take up another language.
Python tends to forsake the technical terminology, and other things a
pro would learn in college in order to be more understandable to
someone without the high priced education. I understand how calling an
array a list or dictionary  might be easier to grasp than a name such
as an array, but the fact of the mmatter is they are technically
arrays with a different name. Although, where they got the name
pickling for object serialization I'll never know. Its a bit silly to
my mind.

Anyway, as you said we are both creating games and that is the
important thing. In the end how you write it doesn't matter as long as
it works.

One advantage you have with Python that I don't have with C++ is
cross-platform support.  Since Python is primarily a runtime language
most of your game will use modules like PyGame that wraps some native
C++ library like SDL. Since you aren't bound to SDL directly you can
install the pyc files and run them anywhere there is a compatible
Python runtime and PyGame installation without recompiling. All the
low-level stuff like native code is done by the C/C++ guys leaving you
free to write your games without worrying about the APIs you are
using.

With C++ I have to recompile the game, and even sometimes modify
sections of the program to compile it on a new target platform.
However, since there usually are no handy third-party wrappers for
things I usually get stuck using some sort of operating system
specific code like SAPI, the Win32 API, DirectX, whatever meaning I
have to do a lot of upgrading to support Mac/Linux. This is an issue
I'm really trying to solve as it gets tiring rewriting this or that to
support one operating system or the other. Most likely after MOTA is
done I'll write some third-party wrappers for OS specific things
meaning I can just include this or that library during compile time
and forget it.

Cheers!






On 4/24/11, Ryan Strunk <ryan.str...@gmail.com> wrote:
> Hey Tom,
>
> Fair points both, and I can well understand one's bias toward a particular
> language. I myself am kindly disposed to Python if you hadn't noticed. For
> me it really came down to basic understanding. I hated having to write out a
> complex program to print "hello world," especially when every book I read
> said things like "Don't worry about the class and void stuff yet. We'll get
> to those in chapter 8." If we don't get to understand them immediately, why
> do we use them now? With Python, I just type "print 'hello world'" and I'm
> done. I love the fact that when I want to test health subtraction, I can
> just launch the shell with those particular methods and test them
> interactively. It's cut down on any number of semantic errors as a result.
>
> That said, I'm jealous of things like XNA that have all sorts of sound
> craziness that I don't have. I suppose I'll just have to port some open
> source libraries and use them myself.
>
> In the end, we're both making games, and I think that's the important part.
>
> Ryan

---
Gamers mailing list __ Gamers@audyssey.org
If you want to leave the list, send E-mail to gamers-unsubscr...@audyssey.org.
You can make changes or update your subscription via the web, at
http://audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/gamers@audyssey.org.
If you have any questions or concerns regarding the management of the list,
please send E-mail to gamers-ow...@audyssey.org.

Reply via email to