Evolución de la sintaxis de Python, comunidades locales y metareferencias a las grabaciones de las tertulias https://podcast.jcea.es/python/24
Participantes:
Jesús Cea, email:
[email protected], twitter:
@jcea, https://blog.jcea.es/,
https://www.jcea.es/. Conectando desde Madrid.
Jesús, conectando desde Ferrol.
Víctor Ramírez, twitter: @virako,
programador python y amante de
vim, conectando desde
Huelva.
Eduardo Castro, email:
[email protected]. Conectando desde A
Guarda.
Gato, desde Chile.
Audio editado por Pablo Gómez, twitter:
@julebek.
La música de la entrada y la salida es "Lightning Bugs", de Jason
Shaw. Publicada en https://audionautix.com/ con licencia
- Creative Commons Attribution 4.0 International
License.
[00:53] Volvemos a estar poquita gente.
Comunidades locales en Galicia.
Python Vigo: https://www.python-vigo.es/.
Makerspaces: https://en.wikipedia.org/wiki/Hackerspace.
GPUL: Grupo de Programadores e Usuarios de Linux:
https://www.gpul.org/.
[05:48] Propuesta de cambio en la sintaxis de lambda.
Ventaja de la sintaxis actual: al aparecer el término
"lambda", se puede buscar en Internet.
El lenguaje cada vez es más opaco y complejo.
[09:58] Asistencia escasa en las últimas tertulias. ¿Cómo
afrontarlo?
¿Proponer temas a lo largo de la semana?
[12:23] Volvemos al cambio de sintaxis de lambda.
PEP 617 -- New PEG parser for CPython
https://www.python.org/dev/peps/pep-0617/.
[15:03] Guido van Rossum
https://es.wikipedia.org/wiki/Guido_van_Rossum está apoyando
muchos cambios polémicos en Python.
Nominación de Pablo Galindo al Steering Council:
https://discuss.python.org/t/steering-council-nomination-pablo-galindo-salgado-2021-term/5720.
[16:58] ¿Python intenta seguir la estela de otros lenguajes con
los que compite?
PEP 617 -- New PEG parser for CPython
https://www.python.org/dev/peps/pep-0617/.
El parser nuevo abre muchas posibilidades peligrosas.
Lista de correo de Python-ideas:
https://mail.python.org/mailman3/lists/python-ideas.python.org/.
[23:38] ¿Dónde se almacenan los valores por defecto de los
parámetros de una función?
Librerías para procesar y generar bytecode
https://es.wikipedia.org/wiki/Bytecode python.
Ejemplo: simplificar la sintaxis de meter código ensamblador
desde Python.
Decoradores que manipulan las tripas de las funciones, a
nivel de bytecode
https://es.wikipedia.org/wiki/Bytecode.
Módulo "dis" https://docs.python.org/3/library/dis.html.
import dis
>>> def a():
... return 5
...
>>> dis.dis(a)
2 0 LOAD_CONST 1 (5)
2 RETURN_VALUE
[30:13] Cómo mezclar código síncrono y asíncrono, en función del
tipo de función que te llama.
inspect.iscoroutinefunction(object):
https://docs.python.org/3/library/inspect.html#inspect.iscoroutinefunction.
inspect.iscoroutine(object):
https://docs.python.org/3/library/inspect.html#inspect.iscoroutine.
inspect.isawaitable(object):
https://docs.python.org/3/library/inspect.html#inspect.isawaitable.
inspect.isasyncgenfunction(object):
https://docs.python.org/3/library/inspect.html#inspect.isasyncgenfunction.
inspect.isasyncgen(object):
https://docs.python.org/3/library/inspect.html.
[32:03] Bibliotecas con "plugins". Namespaces: PEP 420 --
Implicit Namespace Packages
https://www.python.org/dev/peps/pep-0420/.
Problemas con el "modo desarrollo" del paquete.
PEP 402 -- Simplified Package Layout and Partitioning:
https://www.python.org/dev/peps/pep-0402/. Este PEP se
rechazó.
PEP 382 -- Namespace Packages
https://www.python.org/dev/peps/pep-0382/.
Ficheros pth:
https://docs.python.org/3/library/site.html.
[42:21] Charla Python Madrid: Python Packaging: Lo estás
haciendo mal https://www.youtube.com/watch?v=OeOtI