Content deleted Content added
MiszaBot I (talk | contribs) m Archiving 2 thread(s) from Talk:Python (programming language). |
MiszaBot I (talk | contribs) m Archiving 1 thread(s) from Talk:Python (programming language). (ARCHIVE FULL) |
||
Line 299:
: [[Python syntax and semantics]]? I'm pretty proud that this article ''doesn't'' have much in the way of code, to be honest. [[user:thumperward|Chris Cunningham (not at work)]] - [[user talk:thumperward|talk]] 21:03, 25 September 2008 (UTC)
== Scripting language? ==
The opening paragraph doesn't mention that Python is also a [[scripting language]]. Isn't it? Like scripting languages, it's more interpreted than compiled, it's often used to direct other applications, and allows for unstructured use. Without something of the sort added to the opening, it makes Python sound no better than C or C++, which are also "general purpose high-level programming languages". --[[User:A D Monroe III|A D Monroe III]] ([[User talk:A D Monroe III|talk]]) 13:55, 5 October 2008 (UTC)
: Primarily it's an interpreted language, but I also agree with its use as a scripting language. Accordingly, I added some prose to the article for both aspects. [[User:Kbrose|Kbrose]] ([[User talk:Kbrose|talk]]) 15:07, 5 October 2008 (UTC)
Trouble is, "scripting language" is a problematic expression. Python is sometimes used for scripting, but it's also used for applications. It certainly isn't a ''systems'' language -- you wouldn't write device drivers in it -- but the notion that every language is either "systems" or "scripting" is a false dichotomy.
As for "interpreted", that's also problematic. CPython is a bytecode compiler and virtual machine. (You can get native-code compilation with Psyco, or by using Jython (to generate Java bytecode) and a native-code Java compiler.) Python is never an "interpreter" in the classic sense of a program that converts source code to an [[abstract syntax tree]] and runs the program by walking the tree, like <tt>eval</tt> in freshman Lisp interpreters.
Yes, people often use "interpreter" to mean the Python ''interactive console'', but that's a bit of a solecism. If you define "interpreter" that way, then Python has an interpreter but Perl doesn't -- even though both use the same execution strategy under the hood. (Using "interpreter" to mean "interactive console" also pisses off the Lisp folks, who will point out that [[SBCL]] compiles everything to machine code, even expressions you type in interactively.)
The usual expression these days for the class of languages including Python, Perl, and Ruby seems to be "dynamic language". --[[User:Fubar Obfusco|FOo]] ([[User talk:Fubar Obfusco|talk]]) 18:25, 5 October 2008 (UTC)
:But even so, its use as a scripting language is important. For a time, some users of compiled languages tried to dismiss languages such as Python as 'merely scripting' languages in a sort of pejorative fashion. I don't think we should play down this functionality because of that. --[[User:Paddy3118|Paddy]] ([[User talk:Paddy3118|talk]]) 21:10, 5 October 2008 (UTC)
::Something like "Python has been successfully embedded in a number of software products as a scripting language"? <font color="darkgreen">[[User:Lulu of the Lotus-Eaters|LotLE]]</font>×<font color="darkred" size="-2">[[User talk:Lulu of the Lotus-Eaters|talk]]</font> 22:03, 5 October 2008 (UTC)
:::I think LotLE is going in the right direction. Some languages are "scriptable" (i.e. "can be used for efficient scripting"), and others can't. Ideally the various language articles would just say "Xxxx can be used as a [[Scripting language]]", and the [[Scripting language]] article would make it clear what this means. Right now the scripting language article is all over the place, Python and Ruby aren't mentioned anywhere in the body of the article, Javascript and ECMAscript are used as interchangeable terms and—unless you think the statement "Writing in C is much more difficult than writing in the scripting languages." tells the full story—there's no direct explanation of why "systems languages" are not always the ideal tool. I'll take a proper look at it tomorrow - [[User:Pointillist|Pointillist]] ([[User talk:Pointillist|talk]]) 22:47, 5 October 2008 (UTC)
::::You might have missed my very discreet smiley. The above quote is already in the article, and has been for a long while. However, I also added a short sentence to the lead that I think makes the association w/o being quite as forced as the earlier change. That said, I just read the [[scripting language]] article too; I agree that that one is a real mess. <font color="darkgreen">[[User:Lulu of the Lotus-Eaters|LotLE]]</font>×<font color="darkred" size="-2">[[User talk:Lulu of the Lotus-Eaters|talk]]</font> 22:51, 5 October 2008 (UTC)
:::::I was mainly thinking about [[User:Fubar Obfusco|Fubar Obfusco's]] "false dichotomy" point - it would be good if s/he would take a look at [[scripting language]] too (I suspect you two are more polyglottal than I am). - [[User:Pointillist|Pointillist]] ([[User talk:Pointillist|talk]]) 23:10, 5 October 2008 (UTC)
|