07-27-2004, 11:04 PM
|
#7 (permalink)
|
|
Registered User
Join Date: Jul 2004
Location: Australia
Posts: 21
|
Randolpho on another forum added these items to the list, and I thought they should be added here as well:
Quote:
Python:
Pros:
- One of the easiest to learn fully object-oriented language on the market.
- Both functional and object oriented; caters to both sides of the design methodology debate.
- No curly braces for code blocks: blocks are determined by indentation.
- Very rich, both fully OO and fully functional set of libraries
- Easy to use native invocation
- Slicing, Lamda functions, and Lists, oh my!
- Named for Monty Python, and they're damn cool.
Cons:
- Comparitively slow (but still faster than VB! w00t).
- No curly braces for code blocks: blocks are determined by indentation.
PHP:
Pros:
- Speed -- fastest web-application scripting language out there, bar none. Yes, faster than ASP, faster then ASP.NET, faster than JSP, faster than the Python web aps (Zope, Twisted), faster than Coldfusion.
- very rich very fast library of functions
- library functions are mostly thin wrappers of mature c functions.
Cons:
- OO is tacked on, and kludgy at best.
- syntax (especially for OO) can get in the way.
- library functions are mostly thin wrappers of mature c functions.
- Poor error handling support in the library (PHP 5 finally introduced try/catch blocks, but they're not implemented to my knowledge in the library. Yet.)
C#:
Pros:
- Properties syntax makes EJB specifications look stupid. pwned
- Autoboxing
- Operator overloading (something Java is sorely missing)
- Function delegates
- All the pros of .NET, including easy deployment
Cons:
- Autoboxing -- overhead for wrapping primitives in an object can severely hamper even well-written programs.
- Namespaces suck compared to Java import methods.
- Function delegates are nice to have, but the implementation is cludgy (takes like three steps to create one, and they're actually separate objects, which means more overhead).
- Poor use of symbols when a keyword would suffice. Does replacing ":" for "extends" really do anything other than "woo" c++ programmers? Yes it does, it makes the code harder to read.
|
The Java Being Slow comment seems destined to be argued about forever, so I guess people should just take it as personal opinion and have a play to see what they find themselves 
|
|
|