Compilador Python

Páginas: 8 (1865 palabras) Publicado: 10 de mayo de 2012
Estructura del Compilador Python


El lenguaje de Python es muy poderoso, de lenguaje muy dinámico que puede correr en una gran variedad de sistemas operativos y plataformas. El interior del compilador por si mismo sigue un patrón común a muchos otros lenguajes implementados, con un analizador léxico, pasadas , y fases de generación de código. Esto hace a el código fuente de Python una granforma de aprender como lenguajes pueden ser implementados en cualquier sentido.Python es un lenguaje Orientado a Objetos, también se puede usar como lenguaje lineal.
Puede sorprender a aquellos que piensan que Python es un lenguaje basado en Scripts, aprender que el núcleo de el interprete de Python actualmente tiene la estructura de un compilador clásico y común. Cuando se invoca un comando enPython, el código virgen es escaneado por los tokens. Estos tokens son convertidos en un arbol representando la estructura lógica del programa, el cual finalmente es transformado en el código objeto. Finalmente, este código objeto es ejecutado dentro de la maquina virtual.
A fin de demostrar como los componentes discretos de el compilador de Python encajan juntos, Python en su pagina principal , hasacado a la luz publica el código fuente , con licencia GNU , para que cualquier persona que desee tener conocimientos a fondo de Python pude aprender sin ningún problema y asi difundir y compartir este gran compilador.
Python es un lenguaje de programación creado por Guido van Rossum a principios de los años 90 cuyo nombre está inspirado en el grupo de cómicos ingleses “Monty Python”. Es unlenguaje similar a Perl, pero con una sintaxis muy limpia y que favorece un código legible.Se trata de un lenguaje interpretado o de script, con tipado dinámico, fuertemente tipado, multiplataforma y orientado a objetos.





Lenguaje interpretado o de script

Un lenguaje interpretado o de script es aquel que se ejecuta utilizando un programa intermedio llamado intérprete, en lugar decompilar el código a lenguaje máquina que pueda comprender y ejecutar directamente una computadora (lenguajes compilados). La ventaja de los lenguajes compilados es que su ejecución es más rápida. Sin embargo los lenguajes interpretados son más flexibles y más portables.
Python tiene, no obstante, muchas de las características de los lengua- jes compilados, por lo que se podría decir que es semiinterpretado. En Python, como en Java y muchos otros lenguajes, el código fuente se traduce a un pseudo código máquina intermedio llamado bytecode la primera vez que se ejecuta, generando archivos .pyc o .pyo (bytecode optimizado), que son los que se ejecutarán en sucesivas ocasiones.

Tipado dinámico

La característica de tipado dinámico se refiere a que no es necesario declarar el tipo de datoque va a contener una determinada variablesino que su tipo se determinará en tiempo de ejecución según el tipo del valor al que se asigne, y el tipo de esta variable puede cambiar si se le asigna un valor de otro tipo.

Fuertemente tipado

No se permite tratar a una variable como si fuera de un tipo distinto al que tiene, es necesario convertir de forma explícita dicha variable al nuevo tipopreviamente. Por ejemplo, si tenemos una variable que contiene un texto (variable de tipo cadena o string) no podremos tra- tarla como un número (sumar la cadena “9” y el número 8). En otros lenguajes el tipo de la variable cambiaría para adaptarse al comporta- miento esperado, aunque esto es más propenso a errores.



Analizador Lexico

En lugar de hacerlodirectamente tratando de analizar una secuencia de texto, a menudo es más fácil y más rápido detener la entrada de texto y convertir la secuencia de texto en tokens , los cuales incluye palabras clave , literales, operadores y también identificadores, estas tokens pueden ser inspeccionadas por una serie de pasadas los cuales son mucho mas eficientes que un conjunto de código virgen. El proceso de transformar el código de entrada...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Python
  • Por Qué Python?
  • python
  • PYTHON
  • python sonido
  • python
  • python
  • Python

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS