Why Lambda?

You might wonder why a computing society like UQCS would choose the Greek letter lambda (λ) to represent itself. It’s a decision we agonised over in 2020 when replacing the curly braces that had represented us since 2016. The simple answer is that the lambda is even more fundamental to programming than even the humble brace, and in the same way, we want UQCS to be fundamental to the student experience in computing at UQ.

To understand the criticality of the eleventh Greek letter to computers and computer science, we have to go back in time to 1930s Princeton University and a mathematics professor named Alonzo Church. In 1936, Church, as part of his work exploring the foundations of mathematics, introduced what would come to be known as the Lambda Calculus, a universal model of computation. He would later work with one of his doctoral students, Alan Turing (you might have heard of him), to prove its equivalence with another universal model Turing had later developed independently.

While Turing’s more approachable abstraction would go on to become the dominant influence in the development of what we think of today as “imperative” programming languages (C, COBOL, Fortran), many of the concepts introduced by Lambda Calculus live on in modern programming languages. This impact is most evident in functional languages like Haskell and Clojure, but a resurgence in the popularity of functional programming has led to more prevalent, object-oriented languages like Python and Java “borrowing” functional concepts like anonymous functions as well as operations like map, reduce, and filter. This critical influence is why students will still learn Lambda Calculus in courses like UQ’s Theory of Computing (COMP2048) and Functional & Logic Programming (COMP3400), and why UQCS is proud to use Church’s lambda to represent our society.