Начал писать на досуге небольшую библиотеку шаблонных контейнеров. Вот ее часть, включая сортировку списка.
Эта замечательная программа определяет два списка, затем сливает их в один и сортирует. Во время компиляции. Ни одной переменной во время исполнения не пострадало.
А способен ли на такое Lisp, Haskell, Agda, Coq, Epigram или Mercury?