Artwork

Nội dung được cung cấp bởi Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Tất cả nội dung podcast bao gồm các tập, đồ họa và mô tả podcast đều được Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa hoặc đối tác nền tảng podcast của họ tải lên và cung cấp trực tiếp. Nếu bạn cho rằng ai đó đang sử dụng tác phẩm có bản quyền của bạn mà không có sự cho phép của bạn, bạn có thể làm theo quy trình được nêu ở đây https://vi.player.fm/legal.
Player FM - Ứng dụng Podcast
Chuyển sang chế độ ngoại tuyến với ứng dụng Player FM !

Episode 4 - Frame Evaluation

1:13:20
 
Chia sẻ
 

Manage episode 386575711 series 3522009
Nội dung được cung cấp bởi Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Tất cả nội dung podcast bao gồm các tập, đồ họa và mô tả podcast đều được Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa hoặc đối tác nền tảng podcast của họ tải lên và cung cấp trực tiếp. Nếu bạn cho rằng ai đó đang sử dụng tác phẩm có bản quyền của bạn mà không có sự cho phép của bạn, bạn có thể làm theo quy trình được nêu ở đây https://vi.player.fm/legal.

What makes Python an interpreter? Today we're talking about ceval.c, the wonders of frame evaluation, and how it changed over the years.

# Timestamps

(00:00:00)  INTRO

(00:00:59)  BACK TO PYTHON 2.6

(00:02:53)  Stack virtual machine

(00:04:41)  First encounter with opcodes

(00:08:06)  What even is frame evaluation?

(00:12:51)  Stack! Which stack?

(00:15:46)  PRESENT DAY

(00:16:41)  Computed gotos

(00:21:22)  PEP 523: JIT me, maybe

(00:26:53)  Let's generate the interpreter

(00:29:08)  The JIT is coming

(00:33:13)  Python function call inlining

(00:37:23)  Instrumentation: DTrace, PEP 669

(00:41:50)  lltrace and pystats

(00:44:02)  Eval breaker

(00:47:54)  Signal handling

(00:50:47)  Recursion limits

(00:54:27)  String concatenation special case

(00:58:24)  WHAT'S GOING ON IN CPYTHON?

(00:58:42)  3.12.0a2

(00:59:12)  Critical section API adoption

(00:59:34)  PyOnceFlag

(01:00:28)  PyDict_GetItemRef()

(01:03:36)  PyList_Extend() and PyDict_Pop()

(01:04:18)  Parser: better error messages for non-matching elif/else

(01:05:39)  glob.translate()

(01:07:22)  TLS-PSK in the ssl module

(01:08:35)  IDLE debugger improvements

(01:10:50)  First micro-op in the Tier 2 interpreter

(01:11:18)  OUTRO

  continue reading

15 tập

Artwork

Episode 4 - Frame Evaluation

core.py

14 subscribers

published

iconChia sẻ
 
Manage episode 386575711 series 3522009
Nội dung được cung cấp bởi Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa. Tất cả nội dung podcast bao gồm các tập, đồ họa và mô tả podcast đều được Pablo Galindo and Łukasz Langa, Pablo Galindo, and Łukasz Langa hoặc đối tác nền tảng podcast của họ tải lên và cung cấp trực tiếp. Nếu bạn cho rằng ai đó đang sử dụng tác phẩm có bản quyền của bạn mà không có sự cho phép của bạn, bạn có thể làm theo quy trình được nêu ở đây https://vi.player.fm/legal.

What makes Python an interpreter? Today we're talking about ceval.c, the wonders of frame evaluation, and how it changed over the years.

# Timestamps

(00:00:00)  INTRO

(00:00:59)  BACK TO PYTHON 2.6

(00:02:53)  Stack virtual machine

(00:04:41)  First encounter with opcodes

(00:08:06)  What even is frame evaluation?

(00:12:51)  Stack! Which stack?

(00:15:46)  PRESENT DAY

(00:16:41)  Computed gotos

(00:21:22)  PEP 523: JIT me, maybe

(00:26:53)  Let's generate the interpreter

(00:29:08)  The JIT is coming

(00:33:13)  Python function call inlining

(00:37:23)  Instrumentation: DTrace, PEP 669

(00:41:50)  lltrace and pystats

(00:44:02)  Eval breaker

(00:47:54)  Signal handling

(00:50:47)  Recursion limits

(00:54:27)  String concatenation special case

(00:58:24)  WHAT'S GOING ON IN CPYTHON?

(00:58:42)  3.12.0a2

(00:59:12)  Critical section API adoption

(00:59:34)  PyOnceFlag

(01:00:28)  PyDict_GetItemRef()

(01:03:36)  PyList_Extend() and PyDict_Pop()

(01:04:18)  Parser: better error messages for non-matching elif/else

(01:05:39)  glob.translate()

(01:07:22)  TLS-PSK in the ssl module

(01:08:35)  IDLE debugger improvements

(01:10:50)  First micro-op in the Tier 2 interpreter

(01:11:18)  OUTRO

  continue reading

15 tập

모든 에피소드

×
 
Loading …

Chào mừng bạn đến với Player FM!

Player FM đang quét trang web để tìm các podcast chất lượng cao cho bạn thưởng thức ngay bây giờ. Đây là ứng dụng podcast tốt nhất và hoạt động trên Android, iPhone và web. Đăng ký để đồng bộ các theo dõi trên tất cả thiết bị.

 

Hướng dẫn sử dụng nhanh