Alex Potanin

Associate Professor and MIEAust

Picture of Alex Potanin

Location
Skaidrite Darius Building 108, Office N328

Email
alex.potanin@anu.edu.au

Clusters
Computing Foundations

Research Students
Edwin Singh
Iko-Ojo Simon
Julia Groß
Sasha Pak
Zara Hassan

Website
https://potanin.github.io/

Publications
ORCiD
dblp

ANU Research Profile
alex-potanin

Social
LinkedIn

Bio

My research area is programming languages and software verification. I work on the mathematical principles that define the behaviour of the essential tools that software engineers use to craft all the fantastic technology surrounding us today. My contributions to type systems around ownership, immutability, and capabilities redefined the security guarantees that modern software engineering can provide.

Impact: My work over the first decade of my career involved the concepts of ownership and immutability, and how to provide usable language support for both with the help of type parameters. My approach has now been widely adopted by the Rust programming language as “lifetime parameters”. In the second decade, I worked on the design and production of a usable and secure programming language called Wyvern that utilises object capabilities and effects. A popular configuration language called CUE is used widely within Alibaba’s cloud and service configuration. CUE based its module system design on the Wyvern modules.

Alex completed his PhD in 2006 on Generic Ownership - showing how type polymorphism can be used to provide ownership type support in any language, such as the modern-day Rust Programming Language that popularised this approach. Alex went on to show deep connections between ownership and immutability with the help of the Royal Society of New Zealand Marsden Funding in 2008 - 2011 with a book chapter on Immutability outlining all the core outcomes of this novel approach.

After a full-year sabbatical at what was then the Institute for Software Research at Carnegie Mellon University, working with Professor Jonathan Aldrich, I have created a novel general-purpose Wyvern Programming Language designed from the ground up with security and usability as its primary goals. Many students and publications came out of that project over the following decade, including novel ideas for type-specific languages and decidable typing for type members - some of which are reflected in the modern generation of the industrial Scala Programming Language.

I am currently working on some ideas for the modern module systems designs based on capabilities, combinations of abstract and algebraic effects, and other programming language design ideas, including for the world of fully verified and secure software targeting embedded and quantum computing systems.

Degrees

BSc(Hons), PhD, Victoria University of Wellington, New Zealand

Research Interests

Programming Languages Design, Security, Software Engineering

Projects for Potential Students

I am always looking for graduate students. Feel free to email me to discuss your options.

Publications

Please click here to see a list of my publications.

Students

Please click here for a list of my current and previous students.

Teaching

Please click here for a list of my current and past courses.

Conference Committees

Please click here for a list of my current and past conference committee memberships.

bars search times