http://meta2010.pereslavl.ru/ Побывали с
zelych на одном дне, что с Саймоном Пейтоном Джонсом.
Это круто!
Судя по моему впечатлению от его доклада, если кто-то не понимал, что такое суперкомпиляция, то после прочтения
статьи шансов на непонимание остаться не должно.
Выглядел доклад так: "тут в одной умной статье говорят 'про суперкомпиляцию никто толком ничего объяснить не может', поэтому это заняло у меня несколько месяцев. вот, что я понял (несколько слайдов), вот мой суперкомпилятор (четыре строки кода и аннотация типа), вот одна его функция (пять строк кода), вот другая (семь строк кода), вот определение необходимости останова (две строки). вот, что получилось применительно к хаскельным программам (замедление на тройку десятков процентов, ускорение в несколько раз). а вот проблема (диаграмма разбухания кода, в ней одна программа разбухла в 80 раз). проблема размера кода - это проблема. а всё остальное просто замечательно."
В других докладах было два примера, как квадратичное поведение изменяется суперкомпиляцией на линейное - на преобразовании грамматики "doubleA ::= | A doubleA A" в грамматику "doubleA ::= | A A doubleA" и преобразовании наивного обращения списка в эффективное обращение списка.