By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
444,199 Members | 1,120 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 444,199 IT Pros & Developers. It's quick & easy.

Similar programming languages?

P: 17
Hey everyone,

So I've been programming in Python for about a year, but I think it's time to move on. While I think the language is very clean and elegant, I find its object-oriented design sub par at best. When compared to a "pure" OOP language like Java or C#, a lot of things related to OO seem like hacks. I don't know Python's history, but it seems like it was first made as a procedural language, with OO features sloppily tagged on later. It seems to go against the DRY (don't repeat yourself) philosophy in many instances, such as the explicit self and the lack of true anonymous functions (lambdas don't count). After over a year of coding in Python, these things have started stacking up and becoming annoyances.

Now, I don't want to offend any Python lovers out there. I think it's a great language, but it's just not for me. That said, are there any programming languages out there that are similar to Python in syntax, but with a more robust OO design? JavaScript comes to mind, but just the fact that it's prototype-based versus class-based turns me off. Scala looks good, but it's based on the Java platform (I'd prefer something that's standalone, or in the worst case scenario, based on .NET). Ruby has good features but I hate its syntax.

If not, it's not a big deal, Python works, but I'd prefer working with a language that doesn't need as many of these "hacks".

Thanks in advance!

PS: Sorry if I'm so picky. :)
Jan 3 '09 #1
Share this Question
Share on Google+
2 Replies


Smygis
100+
P: 126
Well i dont understand what you consider to be a "hack" about the OO in Python. But the only thing i can think of that might fit you description is the D programming language. But then again, you never really get what you want.
Jan 3 '09 #2

P: 17
Thanks, I'll take a look at it.

Some examples of what I was referring to:
- No true member visibility. You can set private variables by adding an underscore as a prefix, but that just seems like a hack to me.
- The fact that you have to have "self" as one of the arguments to all your methods.
- No static methods (without decorators...again, a hack if you ask me).

But then again, you never really get what you want.
Yeah I know, which is why I'd be perfectly content sticking to Python. I'd just be even happier if I found a better one. In reality, this question was more to satisfy my curiosity than anything, because chances are I'm going to have to stick to Python simply because it's mainstream (more libraries, better support, etc).
Jan 3 '09 #3

Post your reply

Sign in to post your reply or Sign up for a free account.