ну и unsafe — это неудобная деталь реализации, а не основа языка, в отличие от грязных языков, где, как вы сами только писали, наоборот, чистый код писать неудобно
ну и unsafe — это неудобная деталь реализации, а не основа языка, в отличие от грязных языков, где, как вы сами только писали, наоборот, чистый код писать неудобно
что поделать. для целей понимания того, как внутри устроен IO, сгодится и грязный язык.
ну и чем это будет отличаться от дерганья рантайма через FFI? перефразируя, ваше утверждение можно сформулировать как "реализовать IO в хаскелле можно, взяв реализацию IO из хаскелля"