>>15 libffi bindings don't force you to go low-level. The real problem is Haskell is shit at low-level tasks and runtime written in it would be incredibly slow and using tons of memory.
Just look at this
http://bbs.progrider.org/prog/read/1428012611/32