|[ LiB ]|
So which of the three languages is the best to use on your project? That depends a great deal on what you want to accomplish. To wrap up the book, I've outlined some of the pros and cons of each language in this section.
The pros of Python are as follows :
Python has more extension modules than the other languages.
Many online Python tutorials exist. There are also plenty of English books and reference materials, many sample scripts exist online, and there is a wealth of introductory material. The Python.org Website is a good place to start looking for these because it has sections for beginners , tutorials, guides organized by topic, and lists of links and references.
Most folks really enjoy the syntax of the Python language because it appears clean and is easy to read.
Python has an edge where libraries are concerned . There are many libraries, and, for the most part, they are well documented.
Lots of tools that tie into Python are available, and they are often easier to find than the tools for Lua and Ruby.
The cons of Python are as follows:
Existing Python debuggers are considered quirky and slow. Debugging support on Macintosh and consoles is even weaker.
It can be difficult to bundle Python with other languages. There are lots of binary DLLs, and Python has (compared to the other languages) a large standard distribution.
Lots of folks really dislike the white space sensitivity of Python syntax.
Python can be quite slow at times, as everything is an object on the heap.
The pros of Lua are as follows:
Lua is probably the fastest of the three languages and usually uses the least amount of runtime memory.
Lau has the smallest memory footprint for bundling.
The Lau C API is very well documented and has good examples for integrating with C.
The cons of Lua are as follows:
The documentation has improved but is still a bit sketchy overall. Of the three languages, Lua it is probably the least documented (the API being the exception), with the least amount of code comments. This makes for the largest ramp-up time to learn, and there isn't much in the way of introductory Lua material.
There isn't a lot of built-in functionality for Lua. There is little support if you need to create a large, complex application.
Lua could use a better garbage collectorthe current development is moving towards that now. Right now, Lua GC uses a very simple and traditional simple mark and sweep.
The pros of Ruby are as follows:
Ruby possesses fairly good advanced debuggers.
Ruby is object oriented from the ground up, and programmers who are OOP enthusiasts or who are used to the OOP paradigm will find the language extremely comfortable.
Ruby has arguably the simplest syntax, with no real rules exceptions. Especially true for OOP enthusiasts.
The cons of Ruby are as follows:
Lack of English documentation.
Fewer existing works and samples for games than with the other languages.
|[ LiB ]|