
Sign up to save your podcasts
Or
Participantes:
Jesús Cea, email: [email protected], twitter:
Eduardo Castro, email:
Javier, conectando desde Madrid.
Víctor Ramírez, twitter: @virako,
Juan Carlos, conectando desde Bilbao.
Audio editado por Pablo Gómez, twitter:
La música de la entrada y la salida es "Lightning Bugs", de Jason
[01:32] Nuevas versiones: Python 3.10a4 y Numpy.
[01:57] Don’t Use Recursion In Python Any More,Python Closure —
Don’t Use Recursion In Python Any More,Python Closure — A
Hilo en la lista de correo de Python Madrid:
Closure:
Mixin: https://es.wikipedia.org/wiki/Mixin.
[10:02] ¿Qué es ser "Pythónico"?
Twisted daña el cerebro: https://twistedmatrix.com/trac/.
unittest: https://docs.python.org/3/library/unittest.html.
Black: https://pypi.org/project/black/.
from __future__ import braces.
[14:52] Python Ideas:
[16:52] ¿Comillas simples o comillas dobles? ' o ".
[23:07] Tamaño de columnas: ¿80?, ¿120?, ¿132?
[31:02] Primar la legibilidad, no el rendimiento.
Cuando tienes if ... else ..., ¿Qué caso pones primero?,
Microoptimizaciones que complican la legibilidad sin
[41:57] En las variables locales, la longitud del nombre de una
[43:02] Curiosear el "bytecode"
Dispositivo de Duff:
El "bytecode" https://es.wikipedia.org/wiki/Bytecode que
[46:22] Bytecode generado para a + a:
¡Guardas!
Sí se hacen algunas optimizaciones simples:
[50:12] Python deja su pila de evaluación vacía al terminar de
Máquina virtual de registros en vez de máquina virtual
Muchas operaciones redundantes:
¿Qué ocurre a la hora de depurar o para gestionar
[56:32] Que un hilo modifique variables de otro hilo.
¡Guardas!
NOTA DESDE EL FUTURO:
Python 3.9.5:
Traceback objects allow accessing frame objects without
[58:37] Pensábais que las interioridades del intérprete de
La complejidad debe estar en tu programa, no en el lenguaje
Compiladores optimizadores. Python se está quedando atrás.
Hacer caché al buscar atributos:
Issue1616125: Cached globals+builtins lookup optimization:
issue43452: Microoptimize PyType_Lookup for cache hits
Detectar cambios en un diccionario, incluyendo
[01:06:52] Huevos de pascua en Python:
from __future__ import braces.
import antigravity.
import this.
import __hello__.
[01:08:27] Usar pass o ... (ellipsis).
[01:09:22] El PEP 509 no es para hacer diccionarios inmutables.
Es algo interno para el API de C. No está accesible desde
Cambios pequeños pueden abrir posibilidades interesantes.
[01:13:07] Curiosidades encontradas esta semana:
traceback.clear_frames(tb):
inspect: https://docs.python.org/3/library/inspect.html.
Manipular frame.back.
Que una función sepa si se le está llamando de una forma
[01:17:02] Los problemas filosóficos que tiene Jesús Cea con
Una biblioteca debe decidir si es síncrona o asíncrona y
Hacer corrutinas "de verdad":
Persistencia y programación asíncrona.
Concepto de "awaitable":
future.result():
[01:32:17] Es difícil plantear temas tan esotéricos sin una
[01:33:32] Problemas con el control de carga de asyncio
Vuelve a tratarse el tema de si la biblioteca estándar debe
Según Jesús Cea, asyncio
Alternativas a asyncio:
Curio: https://curio.readthedocs.io/en/latest/.
Trio: https://trio.readthedocs.io/en/stable/.
La dificultad de luchar con una biblioteca que está incluída
[01:42:32] La programación asíncrona es útil para muchas más
[01:44:12] Mejor usar concurrent.futures
Transportar excepciones entre hilos.
Control de carga y paralelismo.
[01:45:42] Referencia al bug solucionado en la tertulia
Queda por ultimar el detalle de cómo solucionar el problema
Jesús Cea describe las dos opciones que está barajando:
[01:50:57] Ya hubo "flames" brutales con Guido cuando se
[01:55:02] Despedida.
[01:55:50] Final.
Participantes:
Jesús Cea, email: [email protected], twitter:
Eduardo Castro, email:
Javier, conectando desde Madrid.
Víctor Ramírez, twitter: @virako,
Juan Carlos, conectando desde Bilbao.
Audio editado por Pablo Gómez, twitter:
La música de la entrada y la salida es "Lightning Bugs", de Jason
[01:32] Nuevas versiones: Python 3.10a4 y Numpy.
[01:57] Don’t Use Recursion In Python Any More,Python Closure —
Don’t Use Recursion In Python Any More,Python Closure — A
Hilo en la lista de correo de Python Madrid:
Closure:
Mixin: https://es.wikipedia.org/wiki/Mixin.
[10:02] ¿Qué es ser "Pythónico"?
Twisted daña el cerebro: https://twistedmatrix.com/trac/.
unittest: https://docs.python.org/3/library/unittest.html.
Black: https://pypi.org/project/black/.
from __future__ import braces.
[14:52] Python Ideas:
[16:52] ¿Comillas simples o comillas dobles? ' o ".
[23:07] Tamaño de columnas: ¿80?, ¿120?, ¿132?
[31:02] Primar la legibilidad, no el rendimiento.
Cuando tienes if ... else ..., ¿Qué caso pones primero?,
Microoptimizaciones que complican la legibilidad sin
[41:57] En las variables locales, la longitud del nombre de una
[43:02] Curiosear el "bytecode"
Dispositivo de Duff:
El "bytecode" https://es.wikipedia.org/wiki/Bytecode que
[46:22] Bytecode generado para a + a:
¡Guardas!
Sí se hacen algunas optimizaciones simples:
[50:12] Python deja su pila de evaluación vacía al terminar de
Máquina virtual de registros en vez de máquina virtual
Muchas operaciones redundantes:
¿Qué ocurre a la hora de depurar o para gestionar
[56:32] Que un hilo modifique variables de otro hilo.
¡Guardas!
NOTA DESDE EL FUTURO:
Python 3.9.5:
Traceback objects allow accessing frame objects without
[58:37] Pensábais que las interioridades del intérprete de
La complejidad debe estar en tu programa, no en el lenguaje
Compiladores optimizadores. Python se está quedando atrás.
Hacer caché al buscar atributos:
Issue1616125: Cached globals+builtins lookup optimization:
issue43452: Microoptimize PyType_Lookup for cache hits
Detectar cambios en un diccionario, incluyendo
[01:06:52] Huevos de pascua en Python:
from __future__ import braces.
import antigravity.
import this.
import __hello__.
[01:08:27] Usar pass o ... (ellipsis).
[01:09:22] El PEP 509 no es para hacer diccionarios inmutables.
Es algo interno para el API de C. No está accesible desde
Cambios pequeños pueden abrir posibilidades interesantes.
[01:13:07] Curiosidades encontradas esta semana:
traceback.clear_frames(tb):
inspect: https://docs.python.org/3/library/inspect.html.
Manipular frame.back.
Que una función sepa si se le está llamando de una forma
[01:17:02] Los problemas filosóficos que tiene Jesús Cea con
Una biblioteca debe decidir si es síncrona o asíncrona y
Hacer corrutinas "de verdad":
Persistencia y programación asíncrona.
Concepto de "awaitable":
future.result():
[01:32:17] Es difícil plantear temas tan esotéricos sin una
[01:33:32] Problemas con el control de carga de asyncio
Vuelve a tratarse el tema de si la biblioteca estándar debe
Según Jesús Cea, asyncio
Alternativas a asyncio:
Curio: https://curio.readthedocs.io/en/latest/.
Trio: https://trio.readthedocs.io/en/stable/.
La dificultad de luchar con una biblioteca que está incluída
[01:42:32] La programación asíncrona es útil para muchas más
[01:44:12] Mejor usar concurrent.futures
Transportar excepciones entre hilos.
Control de carga y paralelismo.
[01:45:42] Referencia al bug solucionado en la tertulia
Queda por ultimar el detalle de cómo solucionar el problema
Jesús Cea describe las dos opciones que está barajando:
[01:50:57] Ya hubo "flames" brutales con Guido cuando se
[01:55:02] Despedida.
[01:55:50] Final.
1,115 Listeners