Talk:Python (programming language)
|This is the talk page for discussing improvements to the Python (programming language) article.|
|Python (programming language) has been listed as one of the Engineering and technology good articles under the good article criteria. If you can improve it further, please do so. If it no longer meets these criteria, you can reassess it.|
|This article is of interest to the following WikiProjects:|
|Threads older than 3 months may be archived by.|
Object-oriented vs. Object-orientation
Is this correct?
- Python supports multiple programming paradigms, including object-oriented, imperative and functional programming styles. (emphasis mine)
I think it should say "object-orientation", not "object-oriented". I have made this adjustment before and it was changed back. Am I in the wrong here?
EDIT: Boy I feel stupid. I did not read the full sentence. I'm sorry for wasting your time.
Bullet point list of Uses/Applications
I think it would be easier to read the section entitled "Use" if it included a bullet pointed list. Here's a start:
- Scientific computing (NumPy, SciPy, Sage, etc.)
- web dev (Django, etc.)
- admin scripting (Salt, bcfg2, OpenStack)
- game scripting (Civilization 4, etc.)
- 3D applications (Blender, etc.)
- Linux applications (nearly everything in Ubuntu)
- Largescale web development (e.g. Instagram which is Django, Disqus, Quora)
- Game creation (Eve Online, etc.)
- Crossplatform GUI applications
- Robotics (Pyro, etc.)
- Raspberry Pi
FYI, the starting point for this list is in this thread: http://www.reddit.com/r/Python/comments/1k74jb/ruby_vs_python/ . There's more good information there on the topic. Perhaps the Use section could even be split in two: "Use" and "Applications," where the Use section discusses the language's popularity generally, while the Applications section has a bullet list like this. Others are welcome to revise/incorporate this comment as they like. Thanks. 220.127.116.11 (talk) 17:09, 11 February 2014 (UTC)
- I agree. I'm not sure what order those topics should be in, though. peterl (talk) 20:56, 11 February 2014 (UTC)
- I disagree. Wikipedia is not reddit - it is an encyclopedia. The MOS says articles should be primary prose. meshach (talk) 21:22, 11 February 2014 (UTC)
- Perhaps articles should be primarily readable as prose, but there are plenty of examples in Wikipedia of bullet lists being used appropriately within that context. Indeed, this Python article already has ten such bullet lists :), and I would not be supportive of removing them. They're quite helpful for the reader. I'd suggest adding some "meat" to each bullet list that isn't otherwise self-descriptive. 18.104.22.168 (talk) 22:04, 20 March 2014 (UTC)
According to an undocumented statement in Wik simple English, running speed for C is (up to?) 200 times faster than Python. Ef this is anywhere near correct, it should be documented and included in our article. 22.214.171.124 (talk) 06:57, 16 June 2014 (UTC)
- There are several different implementations of Python, and speed is relevant to the implementation rather than to the language. This is also true of C implementations, but the difference in speed is greater with Python than with modern optimising C compilers. Different benchmark programs will also give significantly different results.
- Such a statement belongs in our articles on, for example, CPython or PyPy, with suitable sources, rather than in this article on the language.-gadfium 07:48, 16 June 2014 (UTC)
Python 2 types
The table of types only describes Python 3 types, and it describes 'str' as 'A character string: an immutable sequence of Unicode codepoints.' which is of course very true for python 3, but very wrong in python 2. Python 2 is still quite commonly used, and in python 2 str is ASCII rather than unicode, and there is a base type 'basestring' and a subclass 'unicode'.
There are likely other differences between the two versions, and I think it is worth having them side by side in the table, rather than only describe Python 3. The other main difference I can see is that py3 int is essentially the py2 long, and py3 'bytes' is probably buffer() in py2, but I am not sure about that one.
If we didnt include python 2 in the table, I would like to add a note under the table that explains that the Python 3 'str' and 'int' are the Python 2 'unicode' and 'long', and the Python 2 types 'str' and 'int', which existed due to hardware/architecture/performance issues rather than ideal-world language "beauty", have been dropped in Python 3. John Vandenberg (chat) 06:00, 12 July 2014 (UTC)
Influenced by Java?
The article lists Java as an influence and the citation just mentions decorators as being influenced by Java. That seems like a pretty small influence. Seems like there either needs to be a better citation or maybe Java (which evidently didn't appear until 4 years after Python) shouldn't be on the lengthy list of influences. 126.96.36.199 (talk) 05:14, 24 October 2014 (UTC)
- It seems to me pretty clear influence. Although Java didn't influence a lot in Python, it clearly influenced decorators. From the ref:
- "Guido took a list of proposals to EuroPython 2004 , where a discussion took place. Subsequent to this, he decided that we'd have the Java-style  @decorator syntax, and this appeared for the first time in 2.4a2"
- The ref is in a PEP, so it's pretty high-grade ref IMO.
- peterl (talk) 09:56, 5 November 2014 (UTC)
- The trouble is that this is a very minor influence, yet the hive-mind at WP will probably now categorize Python as a "Java-based language".
- Decorators didn't come from Java - they were long pre-existing before Java, and before most WP editors were born. What Python took from Java was a convenient syntactic style for representing decorators in source, no more. Andy Dingley (talk) 10:20, 5 November 2014 (UTC)