On Jun 10, 11:21 am, "Russ P." <[EMAIL PROTECTED]> wrote: > I took a risk in choosing Python, and I would > feel better about it if Python would move up to the next level with > more advanced features such as (optional) static typing and private > declarations. But every time I propose something like that, I get all > kinds of flak from people here who do their hacking and care little > about anyone else's needs.
Let me share my personal insight. I used Python for a mission-critical application that needed, in effect, almost 100% uptime with superior throughput. In other words, it was a very fine piece of art that needed to be precise and correct. In the end, Python delivered, under budget, under schedule, and with superbly low maintenance costs (practically 0 compared to other systems written in Java and C). I didn't have to use any of the features you mentioned, and I can't imagine why you would need them. In fact, having them in the language would encourage others to use them and make my software less reliable. You may think we are all a bunch of hackers who are too stupid to understand what you are saying, but that is your loss. Now, let me try to explain something that perhaps the previous 166 post may not have thoroughly explained. If I am duplicating what everyone else has already said, then it's my own fault. Short answer: You don't need these features in Python. You do need to use the right tools for the right tasks. Long answer: Who cares what the type of an object is? Only the machine. Being able to tell, in advance, what the type of a variable is is a premature optimization. Tools like psyco prove that computers (really, programmers) nowadays are smart enough to figure things out the right way without any hints from the developer. Static typing is no longer necessary in today's world. Who cares about private declarations, or interface declarations at all? It is only a message to the developers. If you have a problem with your users doing the right thing, that is a social problem, not a technical one, and the solution is social, not technical. Yes, it is work, but it is not coding---it is explaining to other living, breathing human beings how to do a specific task, which is what you should have been doing from the start. When all you have is a hammer, the world seems full of nails. Think about that. You have more tools than Python to solve these problems, and Python will never be the panacea you wish it was. The panacea is you, putting the right tools to use for the right tasks. -- http://mail.python.org/mailman/listinfo/python-list