Инициализация хаскелевого рунтайма
Nov. 3rd, 2011 10:19 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Блин, как так можно?
http://www.haskell.org/ghc/docs/7.0.3/html/users_guide/bugs-and-infelicities.html#ffi-divergence
hs_init() not allowed after hs_exit()
The FFI spec requires the implementation to support re-initialising itself after being shut down with hs_exit(), but GHC does not currently support that.
Экспериментирую с интеграцией либ на хаскеле в опердень на дельфи.
В принципе, мешать этот баг не должен, но за реализацию в которой цикл "Инициализация чего-либо/Деинициализация чего-либо" можно выполнить только один раз, в нормальных местах руки вырывают.
Даже с учетом того, что у них используются глобальные переменные на предмет того, чтобы не передавать в каждую хаскелевую функцию 100500 указателей на контексты, потоки и прочая хрень - что можно сделать такого, чтобы при деинициализации оно не могло вернутся в изначальное состояние?
http://www.haskell.org/ghc/docs/7.0.3/html/users_guide/bugs-and-infelicities.html#ffi-divergence
hs_init() not allowed after hs_exit()
The FFI spec requires the implementation to support re-initialising itself after being shut down with hs_exit(), but GHC does not currently support that.
Экспериментирую с интеграцией либ на хаскеле в опердень на дельфи.
В принципе, мешать этот баг не должен, но за реализацию в которой цикл "Инициализация чего-либо/Деинициализация чего-либо" можно выполнить только один раз, в нормальных местах руки вырывают.
Даже с учетом того, что у них используются глобальные переменные на предмет того, чтобы не передавать в каждую хаскелевую функцию 100500 указателей на контексты, потоки и прочая хрень - что можно сделать такого, чтобы при деинициализации оно не могло вернутся в изначальное состояние?
no subject
Date: 2011-11-21 07:13 pm (UTC)Имхо, и проще, и перспективней в плане поддержки и развития.
no subject
Date: 2011-11-21 07:23 pm (UTC)no subject
Date: 2011-11-21 07:33 pm (UTC)Если первое, то есть хорошие варианты с быстрыми виртуальными машинами, байт-кодом и прочая. Всё идёт к тому, что всё так будет делаться, кроме совсем уж драйверов. Странно уже держаться за эти комплексы.
no subject
Date: 2011-11-21 07:58 pm (UTC)Т.е. шаг в сторону от С/С++/Java/C# и начинаются пляски, кто во что горазд.
Так что выбрал чисто по эстетическим соображениям хаскель - мне нравятся его теоретические основания и их практическая реализация.
Но в продакшен глобально его тащить нету смысла, ибо если что сломается - никаким боком не найдешь, в чем проблема. Так что только как вспомогательный инструмент для себя.