Семейство языков программирования Racket поставляется с FrTime, языком, который превращает (большую часть) Racket в язык ФРП. Если вы запустите это взаимодействие в командной строке, например,
> (current-time)
Tue Jul 2 09:31:06 EDT 2013
вы постоянно видите правильное время. (Ладно, раньше это работало с current-seconds
; отчет об ошибке находится в разработке.) Насколько я могу судить, программа frtime рассматривает переменные как потоки событий, и эта идея важна для FRP.
Программа юниверса, напротив, явно связывает обработчики событий (и функции рендеринга) с определенными ловушками ОС (например, щелчками мыши). Эти обработчики получают полное состояние и возвращают полное состояние плюс запросы на действия (например, отправку сообщения). В этом смысле юниверс не является языком FRP.
Если бы вы разделили языки на явные и неявные языки FRP, вы могли бы классифицировать пакет обучения юниверса как явный язык FRP.
person
Matthias Felleisen
schedule
02.07.2013