0

Typically strong programming languages has Standart, does Python Language ISO/IEC standard?

I am interested in a whole language standard, not something like a reference. Reference can be created by people who create their own DSL Languages, but Python is widely adopted and strangely it's used not only for scripting purposes.

It's needed if I want:

  • To create my own Python interpreter
  • Understand some detail of the language and how instructions are "compiled" and its guarantees (for example regarding multithreading)

There is a reference manual about the language: https://docs.python.org/3/reference/index.html

Standards about another language (C++) has the following standarts for example:

  • C++2011 standard - ISO C++ standard (ISO/IEC 14882-2011)

  • C++2014 standard - ISO C++ standard (ISO/IEC 14882:2014)

And what I'm looking for similar thigns for Python Language?

Konstantin Burlachenko
  • 5,233
  • 2
  • 41
  • 40
  • Off-site resource requests are categorically off-topic. I don't remember if that was true yet in 2009 when the linked duplicate was asked. The language reference _does_ cover which behavioral guarantees are part of the language itself (as opposed to an accident of implementation) already. That coverage is relatively limited, but so are the relevant guarantees; Jython/IronPython/etc have a great deal of leeway to diverge from the semantics of CPython. – Charles Duffy Apr 02 '21 at 13:30
  • I'm interested in where to get the standard, not high light language reference. – Konstantin Burlachenko Apr 02 '21 at 13:58
  • This one (https://stackoverflow.com/questions/1094961/is-there-a-python-language-specification) is not a thing that I'm looking for. I'm interested in ISO/IEC standard if such one exists. Please do not close the question. – Konstantin Burlachenko Apr 02 '21 at 14:03
  • @CharlesDuffy what do you mean by off-site resources? I don't understand you, sorry. I have to fill in that there is no Standart for Python programming language (long 1000-2000 document with all subtle details) and it's weird for me. – Konstantin Burlachenko Apr 02 '21 at 14:06
  • Exactly, there _is_ no standard, the linked duplicate's answers tell you that. The answer, that there _exists_ no standard, is already given on that preexisting question. – Charles Duffy Apr 02 '21 at 14:59
  • ...with respect to what I mean by "off-site resource request", see #4 in the "some questions are still off-topic" list at https://stackoverflow.com/help/on-topic – Charles Duffy Apr 02 '21 at 15:00
  • (Honestly, if I were GvR, I wouldn't want to be subject to ISO standardization either -- puts a necessarily very heavyweight process in place for changes; the whole idea of Python having a BDFL is that the person fulfilling that role has the power to act in the language's best interests as those interests are understood by them; handing that power off to a committee, one could no longer be a "benevolent dictator"). – Charles Duffy Apr 02 '21 at 15:03
  • ...I think how weird this depends on where your benchmarks are set. The ubiquity of Perl back in the 90s despite not even having a formal syntax definition means that _by comparison with the competition it was built to displace_, Python is well-defined and well-documented. – Charles Duffy Apr 02 '21 at 15:07
  • Yes. I appreciate this point, but...If there are hidden places (python language) => virtual machine (PYC) => python interpreter => emiited code = > target hardware... I even did not ask this question if Python will play a role like a BASH only for launching scripts, but it's not true! Python is using for web-development, even for heavy computation, where previously only Fortran/C/C++ has been used. – Konstantin Burlachenko Apr 02 '21 at 15:09
  • Honestly, I consider using Python for heavy computation a mistake -- there are much better tools for the purpose (though not all of those are formally specified either -- my personal preference is Julia). For web development, though... I've yet to see a compelling argument that the ambiguities lead to practical concerns. And if they do, concrete practical questions are by nature on-topic here. :) – Charles Duffy Apr 02 '21 at 15:28
  • 1
    (One of my favorite languages is Clojure; its documentation is very careful to only lock down invariants -- a user of the language is obligated to be responsible for not relying on any behavior that isn't explicitly documented, if they want to be sure that behavior won't change in the future; it's not so impractical an environment to work in as it sounds, and gives the language/runtime's authors a great deal of freedom to make improvements they wouldn't have with a more tightly specified language). – Charles Duffy Apr 02 '21 at 15:29

0 Answers0