Programming Languages P-language Assignment
I chose Python for my P-language assignment because I would learn the most. I already know Perl a fair bit, and I don't think I would learn a whole lot from PHP. Python seemed the most "different" from what I knew.
With that said, I've been playing around with it for a while, but I procrastinated posting about it. Doesn't that affirm the fact that I'm a real programmer? :)
I started by reading a couple tutorials. This one was the one I referenced the most at first: http://docs.python.org/tut/tut.html. Of course it elevates Python to be one of the best languages out there. It strongly compares it to C which is kind of stupid because Python is an interpreted language while C/C++ are compiled languages. Obviously there are major advantages/disadvantages because of this difference. The only advantage it gives over other scripting languages is that it has more "general data types" and thus has a "much larger problem domain" than Awk or Perl. It doesn't really back it up with any reason to use Python over Perl or any other interpreted languages, as the advantages it gives to Python can be acclaimed by most interpreted languages. I suppose it boasts about Python's extensive high-level data types and collection of standard modules, but that's something I'll have to see for myself.
Anyway, I'm not convinced about the language just by reading one author's claims to superiority; I stand pretty much on neutral ground. I hope to achieve these goals throughout this assignment:
- Become comfortable with Python and feel like I can swim around in it rather than walking along the shoreline
- Develop two Python programs: one showing off the syntax or Python and another showing my deep knowledge of it.
- Learn how to tie C/C++ code with Python. I'm really curious about using Python as a command language for a C/C++ application.
I suppose the first two goals are the requirements for this project; the third is one that I'm just interested in and could be tied into the latter part of the second objective.