Talk:Python (programming language): Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>Kirby Urner
imported>Peter Jackson
(→‎Name: new section)
 
(15 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{subpages}}
{{subpages}}


== High abstraction level ==
== Archiving this Talk page and the current article ==
I am Archiving this Talk page and its current article, leaving a pristine space for a new article to arrive soon.  The previous article can be found in History or '''[[Talk:Python_(programming_language)/Archive_1/Article_archive_1|here]]'''. [[User:Pat Palmer|Pat Palmer]] ([[User talk:Pat Palmer|talk]]) 18:30, 20 January 2021 (UTC)


I am missing a useful comment on the fact that since it is a very high-level interpreted scripting language, it is not as fast as a compiled program.<br/>
I've posted the new article after a sandbox incubation period. The Discussion section of the archived page talks about how I've been invited in to make a fresh start. [[User:Kirby Urner|Kirby Urner]] ([[User talk:Kirby Urner|talk]]) 20:15, 20 January 2021 (UTC)
--[[User:Morten Juhl Johansen|Morten Juhl Johansen]] 06:42, 1 August 2007 (CDT)


:I think the issue is a little more complicated, because python code can theoretically be JIT-compiled, which would make it run at the speed of a natively compiled program. I'm not sure about the current state of compilers/VMs though. But the statement is indeed true of CPython. --[[User:Ion Alexandru Morega|Ion Alexandru Morega]] 07:05, 1 August 2007 (CDT)
Based on feedback from various reader reviewers, I've replaced screen shots of source code with editable content, more in keeping with standard practice. We lose the syntactic coloring, but I compensated by means of a UTF-8 emoji, showing off Python's fully unicode-aware string type. [[User:Kirby Urner|Kirby Urner]] ([[User talk:Kirby Urner|talk]]) 22:04, 14 February 2021 (UTC)


::I have some, quite positive, personal experience in time-consuming Python programs; thus I add a section "Run-time efficiency". [[User:Boris Tsirelson|Boris Tsirelson]] 14:39, 31 August 2010 (UTC)
:I like your original colored example better. The unique color for '''self''' showed that this word is something special, and might be helpful for readers familiar with other object-oriented languages.  The emoji confused me. It was too small to recognize it as an emoji, and I completely missed the point that Python works with unicode. I thought it was some weird editing glitch we would have to fix later.  In an example this small, I wouldn't worry about making it editable. Either way, we are not expecting the reader to understand the code. To accomplish that, we could add a more heavily-commented version in a subpage. See for example '''[[Shortest_path_routing/Catalogs/Dijkstra59.py]]''' --[[User:David MacQuigg|David MacQuigg]] ([[User talk:David MacQuigg|talk]]) 08:52, 16 February 2021 (UTC)


I've been invited to join Citizendium in January 2021, for the express purpose of helping with updating the Python content (the computer language). My initial thought is it wouldn't take a lot to update this page.  I'd suggest a section on the Python 2.x to 3.x backward incompatible leap and tweak the exhibited syntax accordingly (minor changes). I've been authoring a more narrative account on Medium which I would gladly include a link to in 3rd party references. Happy to provide a friend link to [https://kirbyurner.medium.com/some-python-history-72f2510d1930?sk=a1e91af7d5be0afbea084359e7b112ff that article] in the meantime, with some of the missing information for this article. [[User:Kirby Urner|Kirby Urner]] ([[User talk:Kirby Urner|talk]]) 03:30, 9 January 2021 (UTC)
== Purpose of this article ==
This is an excellent history of the language, but not an Introduction or a Tutorial. We should add a link to [https://www.python.org python.org] where anyone interested in learning the language will find well-chosen code examples, a web-based interpreter where they can try their own examples without having to install Python, and links to full documentation, including a tutorial that will take them through all the basic features of the language. The tutorial is what got me hooked 15 years ago. It took about an hour for me to get over the shock of white space being actual syntax. It won't let you make a mistake if you forget a semicolon. --[[User:David MacQuigg|David MacQuigg]] ([[User talk:David MacQuigg|talk]]) 20:56, 21 January 2021 (UTC)


== Article name ==
This article in one of what I hope will be an excellent collection of subtopics and related articles in the Computers Workgroup.  Subtopics should be referenced in links from within the article. Related articles can be found by stepping up in the hierarchy Python > Languages > Computers.  Articles on the same or higher level can be also subtopics of this one (e.g. Ruby should be under Languages, but in an article on Python, it is just a subtopic).  Let's work on an outline that will guide our current developments, but also allow changes as we get authors with interests and expertise in other areas. Note: this is not trying to be a complete outline of computer topics, but just the interests of current CZ authors. --[[User:David MacQuigg|David MacQuigg]] ([[User talk:David MacQuigg|talk]]) 21:51, 23 January 2021 (UTC)


This should be at [[Python (programming language)]], no? [[User:J. Noel Chiappa|J. Noel Chiappa]] 10:07, 10 March 2008 (CDT)
Computers
  Languages
    [[Python]] - IDLE, TkInter, PyQT, Twisted, WSGI, ASGI
    [[Java]], [[C]], [[C++]]
  Applications
    Web - Rails, Django, LAMP
    Scientific - Numpy, SciPy, Jupyter, Matlab, R
    Database - SQL Alchemy, SQLite
    Graphics - SketchUp
  Networks
    [[Email system]]
    HTTP, Websockets


== Illustrations? ==
:Since this Python ecosystem overview mentions many of the above topics, I'm tempted to add external links to anything mentioned that doesn't yet have a CZ page. [https://twistedmatrix.com/trac/ Twisted], [https://www.sqlalchemy.org/ SQLAlchemy], [https://flask.palletsprojects.com/ Flask], [https://www.djangoproject.com/ Django], [https://jupyter.org/ Jupyter]... these all have home pages. Maybe that adds too much clutter? Readers know how to search even in the absence of specific hyperlinks. I'll leave it alone. But would at least an external link to [http://Python.org  Python.org] itself make sense, in terms of accessing the official tutorial, docs, and downloads?  CZ pages needn't reinvent the wheel in terms of echoing what's already out there, right? Are external links always handled using footnote syntax? I finished my contribution before adding any. [[User:Kirby Urner|Kirby Urner]] ([[User talk:Kirby Urner|talk]]) 04:12, 25 January 2021 (UTC)


Perhaps [[:Image:Python-cheat-sheet-v1.png]] may be of use here. [[User:Daniel Mietchen|Daniel Mietchen]] 21:36, 23 July 2009 (UTC)
::Don't worry about clutter with external links. They appear as only a small icon next to the displayed text and don't interrupt the reader's flow.  However, the subpages "Related Articles", "Bibliography", and "External Links" should be used for a more structured and comprehensive guide to further reading. See my article [[Email system]] for examples of all three. Use your author's judgement as to where to place the links. I would include an important link like [http://Python.org  Python.org] in the main text. We definitely don't want to re-invent that wheel.
::Footnotes are better used for clarification of points in the main article.  I like to use them sparingly, so the reader is not overwhelmed like reading a legal document. --[[User:David MacQuigg|David MacQuigg]] ([[User talk:David MacQuigg|talk]]) 10:23, 26 January 2021 (UTC)


== Release information ==
::Thanks for encouragement re external links; I added a bunch in the Early Success section. Elsewhere, in the Origins section, I notice an internal link to [[Virtual_machine]] and see a need for disambiguation, as the JVM and .NET idea is to run atop an operating system, not below one. We talk about Python and Java running on VMs, but in this other sense, of letting the language compile to a common language runtime or bytecode. I should make these comments there too I guess? I'm also mindful that Raspberry Pi and [http://micropython.org/ MicroPython] deserve mention, [[User:Kirby Urner|Kirby Urner]] ([[User talk:Kirby Urner|talk]]) 20:12, 30 January 2021 (UTC)


I just removed some very dated information (3-4 years old) about python's release history. I also removed the bit about python 3.0 being in alpha.
== About Python's creator and possible future language directions ==
This article <span class="newtab">[https://www.zdnet.com/article/python-programming-we-want-to-make-the-language-twice-as-fast-says-its-creator/ ZDNet: Its creator wants to make Python run twice as fast]</span> mentions that Python's creator has started working at Microsoft and is working on a project to add industrial strength capabilities such as increases in performance and multi-threading. This could end up making Python appropriate for high performance website design, which I feel it was not really appropriate for in the past. Is there a way to work this information into the article? [[User:Pat Palmer|Pat Palmer]] ([[User talk:Pat Palmer|talk]]) 17:30, 19 May 2021 (UTC)


How do people feel about including such lists of releases in the article? It seems likely to me that we will not be able to keep them up to date, why it might be better to remove them altogether. Could we put the article into a form which could stand for a few years without feeling dated? [[User:Johan A. Förberg|Johan A. Förberg]] 22:17, 1 March 2011 (UTC)
== Name ==


:I was wondering about that -- I started to put them into a 2 or 3 column format since they so dominate the page, but really, I don't see them as essential for the article. At most, a link to the release page of the Python project would seem to suffice.
Is it by any chance named after Monty Python? [[User:Peter Jackson|Peter Jackson]] ([[User talk:Peter Jackson|talk]]) 09:45, 21 May 2021 (UTC)
 
:There isn't a Monty or a Full release of Python, is there? [[User:Howard C. Berkowitz|Howard C. Berkowitz]] 04:49, 2 March 2011 (UTC)
 
: I think removing the list is a good idea. It does not really help to understand what python is and it does not describe python either. -- [[User:Alexander Wiebel|Alexander Wiebel]] 09:09, 2 March 2011 (UTC)

Latest revision as of 03:45, 21 May 2021

This article is developing and not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
To learn how to update the categories for this article, see here. To update categories, edit the metadata template.
 Definition Dynamic object-oriented, general purpose interpreted programming language. [d] [e]
Checklist and Archives
 Workgroup category Computers [Categories OK]
 Talk Archive 1  English language variant British English

Archiving this Talk page and the current article

I am Archiving this Talk page and its current article, leaving a pristine space for a new article to arrive soon. The previous article can be found in History or here. Pat Palmer (talk) 18:30, 20 January 2021 (UTC)

I've posted the new article after a sandbox incubation period. The Discussion section of the archived page talks about how I've been invited in to make a fresh start. Kirby Urner (talk) 20:15, 20 January 2021 (UTC)

Based on feedback from various reader reviewers, I've replaced screen shots of source code with editable content, more in keeping with standard practice. We lose the syntactic coloring, but I compensated by means of a UTF-8 emoji, showing off Python's fully unicode-aware string type. Kirby Urner (talk) 22:04, 14 February 2021 (UTC)

I like your original colored example better. The unique color for self showed that this word is something special, and might be helpful for readers familiar with other object-oriented languages. The emoji confused me. It was too small to recognize it as an emoji, and I completely missed the point that Python works with unicode. I thought it was some weird editing glitch we would have to fix later. In an example this small, I wouldn't worry about making it editable. Either way, we are not expecting the reader to understand the code. To accomplish that, we could add a more heavily-commented version in a subpage. See for example Shortest_path_routing/Catalogs/Dijkstra59.py --David MacQuigg (talk) 08:52, 16 February 2021 (UTC)

Purpose of this article

This is an excellent history of the language, but not an Introduction or a Tutorial. We should add a link to python.org where anyone interested in learning the language will find well-chosen code examples, a web-based interpreter where they can try their own examples without having to install Python, and links to full documentation, including a tutorial that will take them through all the basic features of the language. The tutorial is what got me hooked 15 years ago. It took about an hour for me to get over the shock of white space being actual syntax. It won't let you make a mistake if you forget a semicolon. --David MacQuigg (talk) 20:56, 21 January 2021 (UTC)

This article in one of what I hope will be an excellent collection of subtopics and related articles in the Computers Workgroup. Subtopics should be referenced in links from within the article. Related articles can be found by stepping up in the hierarchy Python > Languages > Computers. Articles on the same or higher level can be also subtopics of this one (e.g. Ruby should be under Languages, but in an article on Python, it is just a subtopic). Let's work on an outline that will guide our current developments, but also allow changes as we get authors with interests and expertise in other areas. Note: this is not trying to be a complete outline of computer topics, but just the interests of current CZ authors. --David MacQuigg (talk) 21:51, 23 January 2021 (UTC)

Computers
 Languages
   Python - IDLE, TkInter, PyQT, Twisted, WSGI, ASGI
   Java, C, C++
 Applications
   Web - Rails, Django, LAMP
   Scientific - Numpy, SciPy, Jupyter, Matlab, R
   Database - SQL Alchemy, SQLite
   Graphics - SketchUp
 Networks
   Email system
   HTTP, Websockets
Since this Python ecosystem overview mentions many of the above topics, I'm tempted to add external links to anything mentioned that doesn't yet have a CZ page. Twisted, SQLAlchemy, Flask, Django, Jupyter... these all have home pages. Maybe that adds too much clutter? Readers know how to search even in the absence of specific hyperlinks. I'll leave it alone. But would at least an external link to Python.org itself make sense, in terms of accessing the official tutorial, docs, and downloads? CZ pages needn't reinvent the wheel in terms of echoing what's already out there, right? Are external links always handled using footnote syntax? I finished my contribution before adding any. Kirby Urner (talk) 04:12, 25 January 2021 (UTC)
Don't worry about clutter with external links. They appear as only a small icon next to the displayed text and don't interrupt the reader's flow. However, the subpages "Related Articles", "Bibliography", and "External Links" should be used for a more structured and comprehensive guide to further reading. See my article Email system for examples of all three. Use your author's judgement as to where to place the links. I would include an important link like Python.org in the main text. We definitely don't want to re-invent that wheel.
Footnotes are better used for clarification of points in the main article. I like to use them sparingly, so the reader is not overwhelmed like reading a legal document. --David MacQuigg (talk) 10:23, 26 January 2021 (UTC)
Thanks for encouragement re external links; I added a bunch in the Early Success section. Elsewhere, in the Origins section, I notice an internal link to Virtual_machine and see a need for disambiguation, as the JVM and .NET idea is to run atop an operating system, not below one. We talk about Python and Java running on VMs, but in this other sense, of letting the language compile to a common language runtime or bytecode. I should make these comments there too I guess? I'm also mindful that Raspberry Pi and MicroPython deserve mention, Kirby Urner (talk) 20:12, 30 January 2021 (UTC)

About Python's creator and possible future language directions

This article ZDNet: Its creator wants to make Python run twice as fast mentions that Python's creator has started working at Microsoft and is working on a project to add industrial strength capabilities such as increases in performance and multi-threading. This could end up making Python appropriate for high performance website design, which I feel it was not really appropriate for in the past. Is there a way to work this information into the article? Pat Palmer (talk) 17:30, 19 May 2021 (UTC)

Name

Is it by any chance named after Monty Python? Peter Jackson (talk) 09:45, 21 May 2021 (UTC)