interact
требует, чтобы вы вводили конец файла (EOF) в stdin с помощью Ctrl + D (или Ctrl + Z по Windows); когда я набираю эту комбинацию, вывод появляется как требуется. Это необходимо, потому что, как указано в документации для interact
, «весь ввод от стандартного устройства ввода передается [взаимодействовать] в качестве аргумента»; из-за этого вам нужно явно указать место, где заканчивается stdin.
(Кстати, я даже не уверен, как вы получили программу для компиляции; GH C дает мне много «неоднозначного» ошибки типа ', когда я пытаюсь. Мне пришлось добавить сигнатуры типа, чтобы заставить его работать, и в этот момент я нашел решение выше, чтобы работать.)