CPython

CPython
DesenvolvedoresGuido van Rossum, além do time central de desenvolvedores e da comunidade Python
Lançamento estável
3.3 / 29 de setembro de 2012; há 13 anos
Repositório
Escrito emC (linguagem de programação)
PlataformaMultiplataforma
LicençaPython Software Foundation License
WebsitePython Programming Language – Official Website., acessado pela última vez há 699 semanas e 5 dias

CPython é a implementação principal da linguagem de programação Python, escrita em linguagem C. É desenvolvida e mantida por Guido Van Rossum e diversos outros desenvolvedores espalhados pelo mundo.

CPython é um interpretador de bytecode. Ele possui uma interface funcional em diversas linguagens incluindo C, na qual os bindings podem ser escritos explicitamente em qualquer outra linguagem diferente de Python.

Plataformas suportadas

Plataformas suportadas anteriormente

A proposta de melhoria do Python 11 (PEP 11) lista as plataformas que não são suportadas em CPython por Python Software Foundation.[1] Estas plataformas podem ainda ser suportadas por portas externas.

  • DOS (não suportado a partir da versão 2.0)
  • IRIX 4 (não suportado a partir da versão 2.3)
  • Mac OS 9 (não suportado a partir da versão 2.4)
  • MINIX (não suportado a partir da versão 2.3)

Enterprise Linux

Essas versões do Python são distribuídas com distribuições empresariais Linux atualmente suportadas.[2] O status de suporte do Python na tabela refere-se ao suporte da equipe principal do Python, e não do mantenedor da distribuição.

Portas externas

Portas externas são portas não integradas à versão oficial de CPython. Portas incluem frequentemente módulos adicionais para funcionalidades específicas de certas plataformas, como API's gráficos e de som para PSP, SMS e para câmeras S60.

Rotinas concorrentes

A principal dificuldade em utilizar CPython em um computador multiprocessado é a presença de um Global Interpreter Lock em cada processo do interpretador CPython, o qual efetivamente desativa subrotinas concorrentes de um processo em Python.[3] Para ser verdadeiramente concorrentes em um ambiente multiprocessado, processos distintos do interpretador CPython precisam estar rodando, o que faz com que a comunicação entre as tarefas seja dificultado.[4] Há uma constante discussão entre remover o GIL de CPython.[5]

Embora muitas propostas tenham sido feitas para eliminar o GIL, o consenso geral é que, na maioria dos casos, as vantagens do GIL superam as desvantagens; nos poucos casos em que o GIL é um gargalo, o aplicativo deve ser construído em torno da estrutura de multiprocessamento.[6]

Notas

  1. Martelli, Alex (2006). Python in a Nutshell 2ndition ed. [S.l.]: O'Reilly. pp. 5–7. ISBN 0-596-10046-9 

Referências

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.