Applications of feedback in functional programming

Abstract
The use of feedback loops in functional programming languages is explored, particularly in the context of graph-based semantic models. In this setting, program cycles (termed “applicative loops”) offer benefits that are both conceptual (e.g. providing simpler programs) and pragmatic (e.g. offering improved execution efficiency). These benefits are discussed under three general categories, each illustrated with a sample problem: (1) direct encoding of cyclic stream processing algorithms, illustrated by a Dynamo-style “continuous” simulation; (2) resolution of complex evaluation order problems, illustrated by attribute grammar parsing; (3) programmed management of computational aggressiveness, illustrated by a bounded-buffer controller.