Это может быть невозможно. GHC , по крайней мере, требует, чтобы дескриптор имел дескриптор файла ОС, который используется для всех операций чтения / записи / поиска.
См. /libraries/base/IOBase.lhs
из источников GHC.
Вы можете получить тот же эффект, обратившись к справке ОС: создайте временный файл, подключите к нему дескриптор, а затем сопоставьте файл памяти для перенаправлений ввода / вывода. Таким образом, весь дескриптор ввода-вывода станет видимым в разделе отображения памяти.