lfairy edited this page Oct 2, 2012 · 2 revisions

What is Sylvia?

Sylvia is a logic puzzle game, based on a field of mathematics called lambda calculus. You start with a library of functions, and combine them together in various ways. It's implementation of an idea by David Keenan.

Why the name?

There's a long-running tradition of naming functions after birds. Birds tend to gather in forests – hence the name "Sylvia", derived from the Latin word for "forest".

Okay, so what's with the "lambda" thingy?

Lambda calculus is a very tiny programming language with only one data type: functions. Despite this restriction, it can still calculate anything bigger languages can, by mixing up functions in novel ways to emulate numbers, branches, loops and lists.

So why is this important? Lambda calculus forms the basis of all functional programming languages, most notably Scheme and Haskell, and has influenced the design of many others. Many important concepts – recursion, higher-order functions, closures – are inspired by this system. By learning lambda calculus, you can understand these seemingly arbitrary ideas on a deeper level, unburdened by the clutter inherent in more complex, "real world" languages.