U(U) :: U Combinator

U Combinator is a research group in the School of Computing at the University of Utah. We research and develop advanced languages, compilers and tools to improve the performance, parallelism, security and correctness of software.

Academic members


Interact with U Combinator

Point your IRC client at the channel #ucombinator on freenode.

Also, if you're a student, sign up for the Google group to get lab announcements:

Google Groups
U Combinator
Visit this group
Please don't sign up if you're not a student.


Public access

We have a public code repository hosted on Google Code.

Member access

U Combinator members, check out the research repository:

  svn checkout https://www.ucombinator.org/svn/ucombinator/

Why the name U Combinator?

In the theory of programming languages, the U combinator, U, is the mathematical function that applies its argument to its argument; that is U(f) = f(f), or equivalently, U = λ f . f(f).

Self-application permits the simulation of recursion in the λ-calculus, which means that the U combinator enables universal computation. (The U combinator is actually more primitive than the more well-known fixed-point Y combinator.)

The expression U(U), read U of U, is the smallest non-terminating program, and U of U is also the local short-hand for the University of Utah.