Существует много старой информации о сети относительно GHC с epoll/kqueue. Например, код на Simple Servers wiki page больше не компилируется.Как использовать версию GOL/Haskell с поддержкой epoll/kqueue для сетевых подключений?
Может ли кто-нибудь предоставить базовый пример того, как использовать эту функцию с современной версией GHC для сборки, например. TCP-сервер, который просто отвечает «Hello» на подключении?
Можете ли вы описать, что означает «не компилируется больше», и включить код, который вы пытаетесь скомпилировать непосредственно в своем вопросе здесь? (В качестве доказательства того, что я не просто пытаюсь применить произвольные правила: я застрял код из раздела «Базовый параллельный сервер» в файле, и он отлично компилировался на моей машине. Дальнейшие подробности о том, что вы пытаетесь действительно нужны.) –
@ DanielWagner Hi Daniel. Конечно. Если вы посмотрите на последний пример, который фактически использует «epoll», он использует функцию «loop», но это даже не в этом примере. Я получаю сообщение об ошибке 'app3/Main.hs: 14: 5: Не в области:« loop ». Это после того, как я изменил 'System.Event' на' GHC.Event', который нигде не отмечен. – Ana
Страница wiki устарела. Менеджер IO GHC использует epoll/kqueue под капотом без каких-либо специальных усилий программиста (и [на протяжении пяти лет] (https://ghc.haskell.org/trac/ghc/ticket/635)). Так что просто напишите наивную версию с резьбой в верхней части страницы. –