Settings

Theme

Show HN: I added optional chaining to CPython

github.com

2 points by grandimam · 0 comments · 1 min read

Reader

I forked CPython to experiment with adding optional chaining (?.) directly to the language.

For example: name = response?.customer?.name.lower()

If response or customer is None, the expression short-circuits and evaluates to None. This isn't a library or a transpiler change, but a direct CPython modification.

A bit about the build: I used AI extensively for this experiment. Part of my motivation was to see how far I can get the modification in an unfamiliar codebase like CPython.

A couple of hours in I had a working prototype. I would appreciate feedback from people familiar with CPython internals about the implementation.

Source: https://github.com/grandimam/cpython

No comments yet.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection