Я новичок в FRP, но хочу попробовать применить принципы FRP на практике. Во многих ресурсах в Интернете, связанных с FPR на Haskell, авторы ссылаются на реактивный банан. Поэтому я подумал взглянуть и на это, но это вовсе не обязательно, если есть лучший вариант решения проблемы.
Проблема в следующем:
Я хотел бы создать приложение на Haskell, которое принимает события ввода пользователей, должно группировать их по идентификатору пользователя и ждать некоторое время для каждого из них, прежде чем запускать запрос к веб-службе.
Таким образом, ввод, сгенерированный одним пользователем, будет выглядеть примерно так:
h
ha
has
...
haskel
haskell
и после некоторой задержки, скажем, 300 мс без входных событий от пользователя, он должен запустить запрос с последним значением, то есть haskell
в этом примере.
Эта проблема может быть относительно легко решена в C# с расширениями Rx с использованием Buffer
, как описано здесь.
Есть ли что-то подобное для Haskell?