Luciano Ramalho

Luciano Ramalho is the author of Fluent Python, published in 9 languages. He is a Principal Consultant at Thoughtworks and a Fellow of the Python Software Foundation.


Sessions

07-12
13:45
90min
Norvig's lispy: beautiful and illuminating Python code
Luciano Ramalho

Why isn't if a function? Why does Python need to add keywords from time to time? What precisely is a closure, what problem does it solve, and how does it work? These are some of the fundamental questions you'll be able to answer after this tutorial: an interactive exploration of Peter Norvig's lis.py–an interpreter for a subset of the Scheme dialect of Lisp in 132 lines of Python.

Python Friends
Wicklow Hall 1
07-12
15:30
90min
Norvig's lispy: beautiful and illuminating Python code
Luciano Ramalho

Why isn't if a function? Why does Python need to add keywords from time to time? What precisely is a closure, what problem does it solve, and how does it work? These are some of the fundamental questions you'll be able to answer after this tutorial: an interactive exploration of Peter Norvig's lis.py–an interpreter for a subset of the Scheme dialect of Lisp in 132 lines of Python.

Python Friends
Wicklow Hall 1
07-15
10:30
45min
`typing.Protocol`: type hints as Guido intended
Luciano Ramalho

If your type-hinted Python code is Java flavored, you're probably underusing typing.Protocol. Python is literally built on structural typing, a.k.a. duck typing. It's how __special__ methods work. Type hints were introduced in Python 3.5 without support for duck typing, but it was added in Python 3.8 and we should all be using typing.Protocol to have our code statically checked and Pythonic.

Software Engineering & Architecture
The Auditorium