Re: What is unique about Python?
KraftDiner [EMAIL PROTECTED] writes: I like python.. Its ok.. One thing that I find a bit dangerous it the use of the tab character for indentation.. I've had copy and pasts loose indentation on me and its theoretically impossible to really figure out what the indentation should be. So don't use tabs. Use spaces. I think for the extra effort it would have taken to put brackets in the language it would increase a lot of peoples confidence in using it for codeing... It would decrease mine. It would mean I can't just look at the code to check control flow, I actually have to check the blasted brackets. mike -- Mike Meyer [EMAIL PROTECTED] http://www.mired.org/home/mwm/ Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information. -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
i don't know if they are unique, but my favourite features are: readable and short code (consistent syntax, few keywords) iterpreter (very useful for learning) dir(obj) / vars(obj) (very useful for learning) identation dynamic typing lightweight oo (no public/protected/private) built-in types (list, dict, str have useful methods) iterator protocol generators (yield syntax) list comprehension / generator expression keyword args slicing tuple assignment (unpacking tuple: a,b =1,2) return with multiple values (tuple makes it easy) widespread (it's easy to find a python module for any kind of task) extendible with low-level languages (pyrex/swig/boostpython) crossplatform free nszabolcs -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
Szabolcs Nagy [EMAIL PROTECTED] wrote: iterpreter (very useful for learning) In my mind, this is the coolest feature of all. Most of the time, I don't even bother looking stuff up in the docs; it's faster to just fire up an interpreter and try something. Functions like: dir(obj) / vars(obj) (very useful for learning) really work well with this (I'm trying to figure out some way to work synergize into this without sounding like some corporate marketing wonk). identation Feh. A red herring. At best, syntactic sugar. At worst, something for potential adopters to get hung up about. dynamic typing Another absolute key feature, which can't be fully appreciated until you're staring at some 20-line long C++ template error message that you can't even begin to figure out. lightweight oo (no public/protected/private) This one is debatable. This is value in private data (and methods). Fortunately, Python does let you make things private with the double-underscore syntax. built-in types (list, dict, str have useful methods) Python does come with a good assortment of built-in types and containers, but most languages these days come with pretty much the same assortment. iterator protocol More than the protocol is the syntax. Every iterator in Python looks and feels the same. No flipping through pages of documentation to figure out how this particular class's iterator works. generators (yield syntax) list comprehension / generator expression keyword args slicing tuple assignment (unpacking tuple: a,b =1,2) return with multiple values (tuple makes it easy) widespread (it's easy to find a python module for any kind of task) extendible with low-level languages (pyrex/swig/boostpython) crossplatform free nszabolcs -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
identation Feh. A red herring. At best, syntactic sugar. At worst, something for potential adopters to get hung up about. i always ident my code, but in python i don't need to bother with the {} and the ; (which is redundant if i ident anyway) so i like it because i need to type less, and i can read other's code (because of the same layout). lightweight oo (no public/protected/private) This one is debatable. This is value in private data (and methods). Fortunately, Python does let you make things private with the double-underscore syntax. i like it because i need to type (and think) less. When i need to make it clear, which method is private/protected, i can always add a '_' or '__' prefix by convention. built-in types (list, dict, str have useful methods) Python does come with a good assortment of built-in types and containers, but most languages these days come with pretty much the same assortment. python has very few built-in types and these are powerful. C++ stl or java.util has more data structures but those are somewhat less usable. Other languages with the same bult-in data types (thinking about perl, php, ruby) always have a little bit differrent behaviour and i always happen to prefer the python way. (nothing can beat python's list + slicing or the ease of creating a dict). -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
Kay Schluehr wrote: gsteff wrote: So I'm wondering, what is innovative about Python, either in its design or implementation? Or is its magic really just in combining many useful features of prior languages in an unusually pleasant way? Greg The latter. http://www.python-in-business.org/ep2005/download.cpy?document=8599 As Guido described in his presentation Python is a decendent of ABC developed at the university where he studied. Here is some material about the primary motivations of ABC: http://homepages.cwi.nl/~steven/abc/language.html Python seems to proof that eclecticism can be done right. Python has as much resemblance to ABC as an airplane does to a car. The design principles used by ABC (like colons at the end of lines) may have a certain justification in the context of ABC, but you cannot simply transfer that justification to python. ABC is designed specifically and entirely to be beginner-friendly. Python is not. -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
gsteff wrote: I'm a computer science student, and have recently been trying to convince the professor who teaches the programming language design course to consider mentioning scripting languages in the future. Along those lines, I've been trying to think of features of Python, and scripting languages in general, that can't be found in older languages, and have been having a surprising amount of trouble. Dynamic typing can be found in Smalltalk, the module concept can be found in Ada, functional parameters and the dynamic creation of functions can be found in Lisp. The indentation-based syntax seems to be unique, but that's not really what I'm looking for. So I'm wondering, what is innovative about Python, either in its design or implementation? Or is its magic really just in combining many useful features of prior languages in an unusually pleasant way? Greg I find that development in python is much faster than anything else. But one of the noticeable features, for me and presumably computer science students, is the pseudocode-python translation: I've been working through a CS textbook to train for the IOI, and noticed how much my python implementations look like the textbook's pseudocode (whereas the C++ versions look nothing like the pcode). If anything, python is _more_ expressive - where list comprehensions and generators are the natural way of doing things, the textbook has to kludge because its target audience is C++, Java and Pascal programmers. --Max -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
[w]hat is innovative about Python, either in its design or implementation? This is probably the wrong approach to take. What Python brings to the table isn't a new capability, but an elegant and straightforward notation. It's not as beautiful as LISP, but it's close. Sell it on that, not on any unique or rare capabilities. -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
I like python.. Its ok.. One thing that I find a bit dangerous it the use of the tab character for indentation.. I've had copy and pasts loose indentation on me and its theoretically impossible to really figure out what the indentation should be. I think for the extra effort it would have taken to put brackets in the language it would increase a lot of peoples confidence in using it for codeing... -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
gsteff [EMAIL PROTECTED] wrote: ... that's not really what I'm looking for. So I'm wondering, what is innovative about Python, The letter 'y'. Before Python, it was woefully underused in the names of programming languages. Now, of course, there's also Ruby, but then we know Ruby did get some ideas from Python (and the letter 'y' is one of them). Alex -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
In article [EMAIL PROTECTED], [EMAIL PROTECTED] (Alex Martelli) wrote: gsteff [EMAIL PROTECTED] wrote: ... that's not really what I'm looking for. So I'm wondering, what is innovative about Python, The letter 'y'. Before Python, it was woefully underused in the names of programming languages. Now, of course, there's also Ruby, but then we know Ruby did get some ideas from Python (and the letter 'y' is one of them). Alex Yacc has been around for a long time. -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
Roy Smith [EMAIL PROTECTED] wrote: In article [EMAIL PROTECTED], [EMAIL PROTECTED] (Alex Martelli) wrote: gsteff [EMAIL PROTECTED] wrote: ... that's not really what I'm looking for. So I'm wondering, what is innovative about Python, The letter 'y'. Before Python, it was woefully underused in the names of programming languages. Now, of course, there's also Ruby, but then we know Ruby did get some ideas from Python (and the letter 'y' is one of them). Yacc has been around for a long time. ...but is not a programming language... Alex -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
that's not really what I'm looking for. So I'm wondering, what is innovative about Python, The letter 'y'. Before Python, it was woefully underused in the names of programming languages... Roy Yacc has been around for a long time. Sure, but it's capitalized there. Python innovated the use of lower-case 'y'. Skip -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
On Mon, 19 Dec 2005 09:55:44 -0800, gsteff wrote: I'm a computer science student, and have recently been trying to convince the professor who teaches the programming language design course to consider mentioning scripting languages in the future. Along those lines, I've been trying to think of features of Python, and scripting languages in general, that can't be found in older languages, and have been having a surprising amount of trouble. Dynamic typing can be found in Smalltalk, the module concept can be found in Ada, functional parameters and the dynamic creation of functions can be found in Lisp. The indentation-based syntax seems to be unique, but that's not really what I'm looking for. So I'm wondering, what is innovative about Python, either in its design or implementation? Or is its magic really just in combining many useful features of prior languages in an unusually pleasant way? Greg I can suggest to read the introduction of the (free)book : * Green Tea Press - How to Think Like a Computer Scientist- Learning With Python 2002 -- David Van Mosselbeen [EMAIL PROTECTED] -- http://mail.python.org/mailman/listinfo/python-list
What is unique about Python?
I'm a computer science student, and have recently been trying to convince the professor who teaches the programming language design course to consider mentioning scripting languages in the future. Along those lines, I've been trying to think of features of Python, and scripting languages in general, that can't be found in older languages, and have been having a surprising amount of trouble. Dynamic typing can be found in Smalltalk, the module concept can be found in Ada, functional parameters and the dynamic creation of functions can be found in Lisp. The indentation-based syntax seems to be unique, but that's not really what I'm looking for. So I'm wondering, what is innovative about Python, either in its design or implementation? Or is its magic really just in combining many useful features of prior languages in an unusually pleasant way? Greg -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
gsteff wrote: I'm a computer science student, and have recently been trying to convince the professor who teaches the programming language design course to consider mentioning scripting languages in the future. Along those lines, I've been trying to think of features of Python, and scripting languages in general, that can't be found in older languages, and have been having a surprising amount of trouble. Dynamic typing can be found in Smalltalk, the module concept can be found in Ada, functional parameters and the dynamic creation of functions can be found in Lisp. The indentation-based syntax seems to be unique, but that's not really what I'm looking for. So I'm wondering, what is innovative about Python, either in its design or implementation? Or is its magic really just in combining many useful features of prior languages in an unusually pleasant way? IMO it is the latter. Most of the features of Python can be found in other languages. Not so many languages have them all. It is the combination of ease of use and power that makes Python stand out. Kent -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
Perhaps you should ask yourself why you like Python first, and then you'll probably have an answer. I'd say that Python is all about productivity. You can get more done in less time and with fewer lines of code because it's more consice, flexible and expressive. It's also very clear, easy to write and easy to read. You don't need to compile before running your code, and its interactivity lets you experiment and try different approaches faster and better when writing algorithms. This leads to better results and much faster than with any other traditional language. Luis -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
The indentation-based syntax seems to be unique I think Haskell was there first. As well as ABC, one of Python's precursors. Python is a pragmatic language, just like C (I wish I could say that about Java). It does not necessarily innovate but incorporates things known to work elsewhere. C and Java have not done anything particularly unique either. They are included in curricula by their popularity. Isn't that a good enough argument? -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
I would say to your teacher that Python is one of the few languagens that are fun to program with. Cheers =] Sent from the Python - python-list forum at Nabble.com: Re: What is unique about Python? -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
2005/12/20, Murtog (sent by Nabble.com) [EMAIL PROTECTED]: I would say to your teacher that Python is one of the few languagens that are fun to program with. It realy is! I have to say it although I have used it for only 3 days! -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
Indeed. I've found that I can code applications with 10-20% of the amount of code required by other languages and write the code in a correspondingly shorter period of time. The result is far less brittle, more functional and far more maintainable. This is code you can come back to a year later and pick right up with ease. That's not something I can say for most traditional compiled languages. All of this, of course, translates directly to much lower lifecycle cost and safer, more reliable code. --Jon -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
gsteff [EMAIL PROTECTED] wrote: The indentation-based syntax seems to be unique No, you can find it in Haskell too (independently developed), and older languages such as Occam. Alex -- http://mail.python.org/mailman/listinfo/python-list
Re: What is unique about Python?
gsteff wrote: So I'm wondering, what is innovative about Python, either in its design or implementation? Or is its magic really just in combining many useful features of prior languages in an unusually pleasant way? Greg The latter. http://www.python-in-business.org/ep2005/download.cpy?document=8599 As Guido described in his presentation Python is a decendent of ABC developed at the university where he studied. Here is some material about the primary motivations of ABC: http://homepages.cwi.nl/~steven/abc/language.html Python seems to proof that eclecticism can be done right. Kay -- http://mail.python.org/mailman/listinfo/python-list