
Calchylus - Lambda calculus with Hy
===================================

$$\Huge ϒ = 𝜆x.(𝜆y.x \space (y \space y)) \space (𝜆y.x \space (y \space y))$$

``Calchylus`` is a `Hy <http://docs.hylang.org>`__ module that is used to
evaluate, and furthermore, to understand the basics of Lambda calculus
(also written as λ-calculus).

	`Lambda calculus <https://en.wikipedia.org/wiki/Lambda_calculus>`__ is a
	formal system in mathematical logic for expressing computation that is
	based on function abstraction and application using variable binding and
	substitution. -*wikipedia.org*


Quick start
-----------

.. code-block:: bash

	$ pip install hy calchylus
	$ hy

.. code-block:: hylang

	(require [calchylus.lambdas [*]])
	(with-alpha-conversion-and-macros L ,)
	(L x y , (x (x (x (x (x y))))) a b)
	; (a (a (a (a (a b)))))
	(FIBONACCI FIVE)
	; (x (x (x (x (x (x (x (x (x (x (x (x (x y)))))))))))))
