Latest

Geekcamp 2024: The Correspondence Between Proofs and Programs

The Curry Howard Correspondence states a surprising link between two worlds: The Mathematical world of proofs and the world of programs. First noticed in the 1930s, it is the core insight that drives Interactive Theorem Provers that formally encode and verify complex mathematical arguments, and powers applications such as Formal Verification.

But what does this correspondence mean?

This talk aims to illustrate in detail one of the first examples discovered of such a correspondence, loosely based on observations Haskell Curry first noticed in the 1960s.

We construct a toy mathematical universe and a simple programming language, and illustrate exactly how each theorem in the toy universe corresponds to a type in the programming language, where a program satisfying said type can be ran to produce a proof of the theorem.

This talk is catered for programmers with some idea of what types are, but otherwise will be accessible for beginners as the content will be self contained.

PyCon JP 2024: An overview of the optimisation pipeline in CPython 3.13 and onwards

CPython 3.13 introduces a new experimental optimization pipeline that cumulates into a JIT. This talk gives an overview of the components of the optimization pipeline as of CPython 3.13 and plans for future versions of CPython.

The talk will focus on the Trace Optimizer and briefly cover experiments the speaker is personally involved in before the final version currently in CPython 3.13 implemented by Ken Jin.

PyCon US 2024: How two undergrads from the other side of the planet are speeding up your future code

CPython 3.13 is planned to get cool new performance features. One of them is an experimental runtime bytecode optimizer, which will optimize bytecode on the fly using compiler optimizations. It aims to do fancy-sounding things like type propagation, guard elimination, constant promotion and more!

Whatโ€™s less known - this optimizer is currently being built by a university undergraduate ๐Ÿ˜ฒ, with earlier iterations contributed by another undergrad. Weโ€™re also receiving course credit for it! One of us had no prior experience contributing to CPython.

In this talk, weโ€™ll split our time 60-40, with some time for the performance enthusiasts out there, and the remaining time on our experience contributing to CPython as an (in our opinion) underrepresented group, and how you can contribute to CPython as a university student as well.

Geekcamp 2023: Giving nightmares to reverse engineers

How Artfuscator, a project written in 24 hours while having a high fever with covid, works, and the motivations behind it.

Disclaimer: This project looks like a monumental achievement in compiler technology and it is but most of the work wasnt by me: I built Artfuscator on ELVM.

Geekcamp 2022: Rolling Your Own Cryptography: Why You Shouldn't

In 2019, a trivial flaw existed on Flickr that allowed user impersonation. It's one of many that come from flaws in the use of cryptography: And it's not the developer's fault; Crypto is fragile. This talk describes the wide contexts crypto is used (and attacked) and all that can go wrong.