Как полностью перенаправить stdin и stdout с помощью Node.js?

Плохой заголовок ... У меня проблема с созданием интерфейса командной строки.
Сначала я попытался с помощью кода Haskell для начинающих:

main = do
  c <- getLine
  print c
  main

Я пытался перезагрузить его, просмотрев файл h.hs и запустив runhaskell h.hs каждый раз, когда я сохраняю свой код. Мы можем игнорировать, как его перезагрузить так как это не так хлопотно.

Вот мой код в CoffeeScript, чтобы попробовать следующее:

runner = spwan 'runhaskell', ['h.hs']
process.stdin.pipe runner.stdin
runner.stdout.pipe process.stdout
runner.stderr.pipe process.stderr

Но он не работает так, как выдается, выходы не появляются каждый раз, когда я нажимаю кнопку ввода, а печатается после runner как убитый. В чем проблема в коде?

Моей средой является Archlinux.

0
nl ja de
@Deestan Я попробовал еще раз. Он дает выходы, когда я запускаю 'end' вручную. Но когда я закрываю его, я больше не могу писать текст в этот поток.
добавлено автор jiyinyiyong, источник
Может ли быть, что runhaskell ждет закрытия stdin ?
добавлено автор Deestan, источник
Да, вам нужно будет отправить все до окончания. Похоже, что runhaskell отказывается выполнять какую-либо работу, пока не получит скрипт whole для запуска, а закрытие потока - это то, как вы сигнализируете, что вы отправили весь скрипт.
добавлено автор Deestan, источник
pro.js
pro.js
4 675 участник(ов)

Про JavaScript и NodeJS Invite: https://t.me/joinchat/Be4rsT5Rsgq30DHutjxXgA Правила: http://telegra.ph/ru-chat-rules-06-19 Вакансии только с ЗП, не чаще раза в неделю.

Node.js — русскоговорящее сообщество
Node.js — русскоговорящее сообщество
4 160 участник(ов)

Рекомендуем сразу отключить уведомления, чтобы пребывание здесь было комфортным. Правила: https://rudevs.network/ByaMH6un7 См. также: @js_ru, @react_js, @angular_ru, @vuejs_ru, @devops_ru Вакансии и поиск работы: @javascript_jobs и @nodejs_jobs

Linux Help
Linux Help
2 686 участник(ов)

Правила: https://telegra.ph/Pravila-Linux-Help-10-15

Linux Security
Linux Security
652 участник(ов)

Данная группа принципиально про безопасность и в частности про безопасность Linux. Прочие темы просим обсуждать в профильных чатах.

Node: русскоязычное сообщество
Node: русскоязычное сообщество
28 участник(ов)

Независимое сообщество node разработчиков на русском языке. Правила: https://node-chat.ru/ Партнеры: @react_ru @ru_vuejs @nuxtjs_ru @ru_docker @nlp_ru

Linux Gaming RUS
Linux Gaming RUS
28 участник(ов)

Русскоязычный чатик, посвящённый играм на различных дистрибутивах Linux, а также wine, proton Arch Linux RU @ArchLinuxChatRU Gnome RU @gnome_ru