Artwork

Treść dostarczona przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Cała zawartość podcastów, w tym odcinki, grafika i opisy podcastów, jest przesyłana i udostępniana bezpośrednio przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa lub jego partnera na platformie podcastów. Jeśli uważasz, że ktoś wykorzystuje Twoje dzieło chronione prawem autorskim bez Twojej zgody, możesz postępować zgodnie z procedurą opisaną tutaj https://pl.player.fm/legal.
Player FM - aplikacja do podcastów
Przejdź do trybu offline z Player FM !

Episode 6 - An Exceptional Episode

1:31:25
 
Udostępnij
 

Manage episode 394079798 series 3522009
Treść dostarczona przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Cała zawartość podcastów, w tym odcinki, grafika i opisy podcastów, jest przesyłana i udostępniana bezpośrednio przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa lub jego partnera na platformie podcastów. Jeśli uważasz, że ktoś wykorzystuje Twoje dzieło chronione prawem autorskim bez Twojej zgody, możesz postępować zgodnie z procedurą opisaną tutaj https://pl.player.fm/legal.

Happy New Year! In this episode we're talking about exceptions, how they work, and how they evolved. Expect the unexpected.

# Timestamps

(00:00:00)  INTRO

(00:01:43)  How does a 'try' block work?

(00:04:00)  How many 'try' blocks can you fit on a bus?

(00:05:56)  How does Python store the current exception?

(00:09:30)  Pre-history: exceptions as strings

(00:12:59)  Try out string exceptions with CentOS 5

(00:14:28)  PEP 341: Combining 'finally' and 'except' in one 'try' block

(00:16:15)  Core Hacker in Residence

(00:16:51)  PEP 3109: Raising exceptions in Python 3K

(00:19:17)  Automatic tuple unpacking for raised exceptions?!

(00:21:55)  PEP 3110: Catching exceptions in Python 3K

(00:26:00)  Foreshadowing: exception groups

(00:27:10)  PEP 3134: Exception chaining

(00:29:12)  __cause__, __context__, __traceback__

(00:31:50)  Back in the day we had to walk uphill both ways

(00:32:56)  PEP 409: Suppressing exception chaining

(00:34:44)  Raise from None? Or raise from Ellipsis?

(00:37:11)  __supress_context__

(00:38:13)  Semantic difference between 'pass', 'None', and '....'

(00:41:02)  NotImplemented vs NotImplementedError

(00:43:02)  Zero-cost exceptions in Python 3.11

(00:51:12)  Reconstructing exception table entries dynamically

(00:52:51)  Objects/exception_handling_notes.txt

(00:54:19)  PEP 654: Historical context

(00:56:58)  PEP 654: BaseExceptionGroup and ExceptionGroup

(00:58:29)  PEP 654: except*

(01:03:23)  PEP 678: Exception notes

(01:06:09)  PEP 657: Cooler Errors

(01:08:36)  A message to language implementers

(01:09:15)  Fine-grained error locations in tracebacks

(01:12:05)  This is useful for tracing coverage and Specializator

(01:13:50)  Hacker in Residence fired?

(01:16:25)  WHAT'S GOING ON IN CPYTHON

(01:16:58)  Copy&patch JIT PR open

(01:21:30)  Free-threading progress: GC split, stop-the-world

(01:24:22)  The buildbots are red

(01:25:27)  Faster CPython changes: interpreter code generator refactors

(01:26:27)  Eval Game crash fix

(01:28:41)  Three developers in residence!

(01:29:54)  OUTRO

# Links

https://compilercrim.es/rust-np/

  continue reading

16 odcinków

Artwork

Episode 6 - An Exceptional Episode

core.py

15 subscribers

published

iconUdostępnij
 
Manage episode 394079798 series 3522009
Treść dostarczona przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Cała zawartość podcastów, w tym odcinki, grafika i opisy podcastów, jest przesyłana i udostępniana bezpośrednio przez Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa lub jego partnera na platformie podcastów. Jeśli uważasz, że ktoś wykorzystuje Twoje dzieło chronione prawem autorskim bez Twojej zgody, możesz postępować zgodnie z procedurą opisaną tutaj https://pl.player.fm/legal.

Happy New Year! In this episode we're talking about exceptions, how they work, and how they evolved. Expect the unexpected.

# Timestamps

(00:00:00)  INTRO

(00:01:43)  How does a 'try' block work?

(00:04:00)  How many 'try' blocks can you fit on a bus?

(00:05:56)  How does Python store the current exception?

(00:09:30)  Pre-history: exceptions as strings

(00:12:59)  Try out string exceptions with CentOS 5

(00:14:28)  PEP 341: Combining 'finally' and 'except' in one 'try' block

(00:16:15)  Core Hacker in Residence

(00:16:51)  PEP 3109: Raising exceptions in Python 3K

(00:19:17)  Automatic tuple unpacking for raised exceptions?!

(00:21:55)  PEP 3110: Catching exceptions in Python 3K

(00:26:00)  Foreshadowing: exception groups

(00:27:10)  PEP 3134: Exception chaining

(00:29:12)  __cause__, __context__, __traceback__

(00:31:50)  Back in the day we had to walk uphill both ways

(00:32:56)  PEP 409: Suppressing exception chaining

(00:34:44)  Raise from None? Or raise from Ellipsis?

(00:37:11)  __supress_context__

(00:38:13)  Semantic difference between 'pass', 'None', and '....'

(00:41:02)  NotImplemented vs NotImplementedError

(00:43:02)  Zero-cost exceptions in Python 3.11

(00:51:12)  Reconstructing exception table entries dynamically

(00:52:51)  Objects/exception_handling_notes.txt

(00:54:19)  PEP 654: Historical context

(00:56:58)  PEP 654: BaseExceptionGroup and ExceptionGroup

(00:58:29)  PEP 654: except*

(01:03:23)  PEP 678: Exception notes

(01:06:09)  PEP 657: Cooler Errors

(01:08:36)  A message to language implementers

(01:09:15)  Fine-grained error locations in tracebacks

(01:12:05)  This is useful for tracing coverage and Specializator

(01:13:50)  Hacker in Residence fired?

(01:16:25)  WHAT'S GOING ON IN CPYTHON

(01:16:58)  Copy&patch JIT PR open

(01:21:30)  Free-threading progress: GC split, stop-the-world

(01:24:22)  The buildbots are red

(01:25:27)  Faster CPython changes: interpreter code generator refactors

(01:26:27)  Eval Game crash fix

(01:28:41)  Three developers in residence!

(01:29:54)  OUTRO

# Links

https://compilercrim.es/rust-np/

  continue reading

16 odcinków

Kaikki jaksot

×
 
Loading …

Zapraszamy w Player FM

Odtwarzacz FM skanuje sieć w poszukiwaniu wysokiej jakości podcastów, abyś mógł się nią cieszyć już teraz. To najlepsza aplikacja do podcastów, działająca na Androidzie, iPhonie i Internecie. Zarejestruj się, aby zsynchronizować subskrypcje na różnych urządzeniach.

 

Skrócona instrukcja obsługi