Сообщение Как вызвать функцию из Haskell в Rust ? И обратно ? от 06.11.2022 17:50
Изменено 06.11.2022 17:58 Эйнсток Файр
Как вызвать функцию из Haskell в Rust ? И обратно ?
Интересуют два сценария:
1) ("Мы должны пойти глубже") стартующее приложение написано на Haskell, оно загружает .so-файл (на linux) и вызывает там код, написанный на Rust.
2) ("Снизу постучали") библиотека на Rust отчаянно сигналит подписчикам о происходящих в процессе обработке событиях,
и вызывает коллбеки, переданные ей ранее из Haskell.
Интересует код как на Haskell, так и на Rust (т.е. обе взаимодействующие стороны).
Я понимаю, что объяснять там надо много, и про контексты, и про do-конструкцию, и про класс типов монады, и как в итоге всё-таки написать.
Так же интересуют примеры, когда без Rust не обойтись ну никак. Может обработка сообщений от ядра? Фантазии не хватает.
1) ("Мы должны пойти глубже") стартующее приложение написано на Haskell, оно загружает .so-файл (на linux) и вызывает там код, написанный на Rust.
2) ("Снизу постучали") библиотека на Rust отчаянно сигналит подписчикам о происходящих в процессе обработке событиях,
и вызывает коллбеки, переданные ей ранее из Haskell.
Интересует код как на Haskell, так и на Rust (т.е. обе взаимодействующие стороны).
Я понимаю, что объяснять там надо много, и про контексты, и про do-конструкцию, и про класс типов монады, и как в итоге всё-таки написать.
Так же интересуют примеры, когда без Rust не обойтись ну никак. Может обработка сообщений от ядра? Фантазии не хватает.
Как вызвать функцию из Haskell в Rust ? И обратно ?
Интересуют два сценария:
1) ("Мы должны пойти глубже") стартующее приложение написано на Haskell, оно загружает .so-файл (на linux) и вызывает там код, написанный на Rust.
2) ("Снизу постучали") библиотека на Rust отчаянно сигналит подписчикам о происходящих в процессе обработке событиях,
и вызывает коллбеки, переданные ей ранее из Haskell. Можно на примере идиоматичной графической rust-библиотки, без каких-то там обёрток над сишным Gtk+.
Интересует код как на Haskell, так и на Rust (т.е. обе взаимодействующие стороны).
Я понимаю, что объяснять там надо много, и про контексты, и про do-конструкцию, и про класс типов монады, и как в итоге всё-таки написать.
Так же интересуют примеры, когда без Rust не обойтись ну никак. Может обработка сообщений от ядра? Фантазии не хватает.
1) ("Мы должны пойти глубже") стартующее приложение написано на Haskell, оно загружает .so-файл (на linux) и вызывает там код, написанный на Rust.
2) ("Снизу постучали") библиотека на Rust отчаянно сигналит подписчикам о происходящих в процессе обработке событиях,
и вызывает коллбеки, переданные ей ранее из Haskell. Можно на примере идиоматичной графической rust-библиотки, без каких-то там обёрток над сишным Gtk+.
Интересует код как на Haskell, так и на Rust (т.е. обе взаимодействующие стороны).
Я понимаю, что объяснять там надо много, и про контексты, и про do-конструкцию, и про класс типов монады, и как в итоге всё-таки написать.
Так же интересуют примеры, когда без Rust не обойтись ну никак. Может обработка сообщений от ядра? Фантазии не хватает.