Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Python (programming language)
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Other implementations=== All alternative implementations have at least slightly different semantic. For example, an alternative may include unordered dictionaries<!-- like with Codon; also PyPy? Cython? -->, in contrast to other current Python versions. As another example in the larger Python ecosystem, PyPy does not support the full C Python API. Alternative implementations include the following: * [[PyPy]] is a fast, compliant interpreter of Python 2.7 and <!-- 3.8 (both are outdated CPython versions) --> 3.10.<ref name="AutoNT-70"/><ref>{{Cite web|last=Team|first=The PyPy|date=2019-12-28|title=Download and Install|url=https://www.pypy.org/download.html|access-date=2022-01-08|website=PyPy|language=en|archive-date=8 January 2022|archive-url=https://web.archive.org/web/20220108212951/https://www.pypy.org/download.html|url-status=live}}</ref> PyPy's [[just-in-time compiler]] often improves speed significantly relative to CPython, but PyPy does not support some libraries written in C.<ref name="AutoNT-71"/> PyPy offers support for the [[RISC-V]] instruction-set architecture, for example. * Codon is an implentation with an [[ahead-of-time compilation|ahead-of-time (AOT) compiler]], which compiles a statically-typed Python-like language whose "syntax and semantics are nearly identical to Python's, there are some notable differences"<ref>{{Cite web |title=Codon: Differences with Python |url=https://docs.exaloop.io/codon/general/differences |url-status=live |archive-url=https://web.archive.org/web/20230525002540/https://docs.exaloop.io/codon/general/differences |archive-date=2023-05-25 |access-date=2023-08-28}}</ref> For example, Codon uses 64-bit machine integers for speed, not arbitrarily as with Python; Codon developers claim that speedups over CPython are usually on the order of ten to a hundred times. Codon compiles to machine code (via [[LLVM]]) and supports native multithreading.<ref>{{Cite web |last=Lawson |first=Loraine |date=2023-03-14 |title=MIT-Created Compiler Speeds up Python Code |url=https://thenewstack.io/mit-created-compiler-speeds-up-python-code/ |url-status=live |archive-url=https://web.archive.org/web/20230406054200/https://thenewstack.io/mit-created-compiler-speeds-up-python-code/ |archive-date=2023-04-06 |access-date=2023-08-28 |website=The New Stack |language=en-US}}</ref> <!-- It's compile has a restrictive BSL licence, but it doesn't affect generated code: --> Codon can also compile to Python extension modules that can be imported and used from Python. * [[MicroPython]] and [[CircuitPython]] are Python 3 variants that are optimized for [[microcontroller]]s, including the [[Lego Mindstorms EV3]].<ref>{{Cite web|url=https://education.lego.com/en-us/support/mindstorms-ev3/python-for-ev3|title=Python-for-EV3|website=LEGO Education|language=en|access-date=17 April 2019|archive-date=7 June 2020|archive-url=https://web.archive.org/web/20200607234814/https://education.lego.com/en-us/support/mindstorms-ev3/python-for-ev3|url-status=live}}</ref> * Pyston is a variant of the Python runtime that uses just-in-time compilation to speed up execution of Python programs.<ref>{{cite news|url=https://www.infoworld.com/article/3587591/pyston-returns-from-the-dead-to-speed-python.html|title=Pyston returns from the dead to speed Python|last=Yegulalp|first=Serdar|date=29 October 2020|website=[[InfoWorld]]|access-date=26 January 2021|archive-date=27 January 2021|archive-url=https://web.archive.org/web/20210127113233/https://www.infoworld.com/article/3587591/pyston-returns-from-the-dead-to-speed-python.html|url-status=live}}</ref> * Cinder is a performance-oriented fork of CPython 3.8 that features a number of optimizations, including bytecode inline caching, eager evaluation of coroutines, a method-at-a-time [[Just-in-time compilation|JIT]], and an experimental bytecode compiler.<ref>{{Cite web|url=https://github.com/facebookincubator/cinder|title=cinder: Instagram's performance-oriented fork of CPython.|website=[[GitHub]]|access-date=4 May 2021|language=en|archive-date=4 May 2021|archive-url=https://web.archive.org/web/20210504112500/https://github.com/facebookincubator/cinder|url-status=live}}</ref> * The Snek<!-- (previously named Newt) --><ref>{{Cite web |last=Aroca |first=Rafael |date=2021-08-07 |title=Snek Lang: feels like Python on Arduinos |url=https://rafaelaroca.wordpress.com/2021/08/07/snek-lang-feels-like-python-on-arduinos/ |access-date=2024-01-04 |website=Yet Another Technology Blog |language=en |archive-date=5 January 2024 |archive-url=https://web.archive.org/web/20240105001031/https://rafaelaroca.wordpress.com/2021/08/07/snek-lang-feels-like-python-on-arduinos/ |url-status=live}}</ref><ref>{{Cite web |last=Aufranc (CNXSoft) |first=Jean-Luc |date=2020-01-16 |title=Snekboard Controls LEGO Power Functions with CircuitPython or Snek Programming Languages (Crowdfunding) β CNX Software |url=https://www.cnx-software.com/2020/01/16/snekboard-controls-lego-power-functions-with-circuitpython-or-snek-programming-languages/ |access-date=2024-01-04 |website=CNX Software β Embedded Systems News |language=en-US |archive-date=5 January 2024 |archive-url=https://web.archive.org/web/20240105001031/https://www.cnx-software.com/2020/01/16/snekboard-controls-lego-power-functions-with-circuitpython-or-snek-programming-languages/ |url-status=live}}</ref><ref>{{Cite web |last=Kennedy (@mkennedy) |first=Michael |title=Ready to find out if you're git famous? |url=https://pythonbytes.fm/episodes/show/187/ready-to-find-out-if-youre-git-famous |access-date=2024-01-04 |website=pythonbytes.fm |language=en-US |archive-date=5 January 2024 |archive-url=https://web.archive.org/web/20240105001031/https://pythonbytes.fm/episodes/show/187/ready-to-find-out-if-youre-git-famous |url-status=live}}</ref><!-- https://keithp.com/blogs/newt-lola/ https://bipes.net.br/snek-web-uploader/ --> embedded computing language "is Python-inspired, but it is not Python. It is possible to write Snek programs that run under a full Python system, but most Python programs will not run under Snek."<ref>{{Cite web |last=Packard |first=Keith |date=2022-12-20 |title=The Snek Programming Language: A Python-inspired Embedded Computing Language |url=https://sneklang.org/doc/snek.pdf |access-date=4 January 2024 |archive-date=4 January 2024 |archive-url=https://web.archive.org/web/20240104162458/https://sneklang.org/doc/snek.pdf |url-status=live}}</ref> Snek is compatible with 8-bit [[AVR microcontrollers]] such as [[ATmega|ATmega 328P]]-based Arduino, as well as larger microcontrollers that are compatible with [[MicroPython]]. Snek is an imperative language that (unlike Python) omits [[object-oriented programming]]. Snek supports only one numeric data type, which features 32-bit [[single-precision|single precision]] (resembling [[JavaScript]] numbers, though smaller).<!-- "Snek is a tiny embeddable language targeting processors with only a few kB of flash and ram. Think of something that would have been running BASIC years ago and you'll have the idea. These processors are too small to run MicroPython." "Snekboard is a custom embedded computer designed to run Snek or CircuitPython." -->
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)