| Reading on continuations |
[Apr. 8th, 2008|02:29 pm] |
1. Talk: Delimited Continuations in Computer Science and Linguistics Презентация О. Киселева и К. Шана, которая популярно объясняет значение терминов continuations, delimited continuations, и показывает, каким образом они относятся к операционным системам и лингвистике. Китайские иероглифы вместо привычных греческих букв смотрятся очень свежо.
2. An Analytical Approach to Programs as Data Objects Диссертация Olivier Danvy. Фундаментальная работа по теории языков программирования, рассматриваются вопросы семантики программ, трансформации программ, частичных вычислений, все изложение построено вокруг понятия "continuation". *
*Я ее еще не осилил, но выглядит как MUST READ. Как минимум, эпиграфы к каждой главе замечательные. |
|
|
| Монады и continuations (shift/reset part 1.5) |
[Nov. 21st, 2007|08:29 pm] |
In America, you execute a program. In Soviet Russia, a program executes you!
При реализации DSL часто нужна зависимость выражения от контекста. Нам часто требуется, чтобы что-то происходило за кулисами. Например, в комбинаторах парсеров состояние парсера — текущий фрагмент входной строки — передается неявно, и это удобно. ( дальше ) То же на РСДН, с обсуждением |
|
|
| shift/reset для самых маленьких, часть 1 |
[Oct. 28th, 2007|08:28 pm] |
Как оказалось, я задумал написать больше, чем способен в ближайшее время. Потому принято решение выкладывать текст по частям. Приступим:
Введение
Мы познакомимся с очень мощным и опасным инструментом управления ходом программы - delimited continuations, а точнее, с операторами shift/reset. Творческое применение shift/reset открывает куда большие возможности по запутыванию программ, чем могло бы сниться несчастному goto. Но с другой стороны, continuations можно применять и в мирных целях, причем в тех областях, где continuations действительно нужны, их очень трудно чем-либо заменить. В конце концов, о delimited continuations в последнее время довольно много пишут, потому любому, кто интересуется теоретической информатикой, полезно иметь представление об этом звере.
( читать дальше о континуациях и их аппликациях ) |
|
|