ELI5: Explain Like I'm 5

Lambda cube

A lambda cube is like a special box for talking about computer programs. It has three sides, and each side has something special on it.

The first side is called "lambda calculus." This is a way of writing computer programs using only simple rules, like putting things in boxes and taking them out again. It's like playing with blocks, but instead of making towers or bridges, you're making programs that do cool things.

The second side is called "system F." This is a more advanced way of writing computer programs that can do even cooler things, like making new kinds of boxes to put things in or making programs that work with other programs.

The third side is called "dependent types." This is like a secret power that lets you describe how your programs work in even more detail. It's like being able to say exactly what kind of blocks you need to make a bridge that won't fall down.

Each of these sides is useful for different kinds of programs, and you can combine them in different ways to make even more powerful programs. Think of it like having different kinds of Lego bricks that you can use to build all sorts of different things. So, the lambda cube helps programmers write better and more powerful computer programs.