Пролог SWI в терминале действует иначе, чем загрузка программного обеспечения SWI. OSX - PullRequest
0 голосов
/ 11 января 2019

Я пытаюсь запустить простой пролог-скрипт, который принимает пользовательский ввод и печатает его обратно в терминал.

go :- write('Enter Your Name: '),
        read(Yourname), 
        write('Hello '), write(Yourname), nl.

когда я загружаю скрипт в терминал, используя ['file.pl'], а затем запускаю его, при запуске он создает новую строку, но не печатает Enter Your Name:. если я нажимаю ввод, начинается новая строка, начинающаяся с |:. если я напишу word. в любой момент, он напечатает Enter Your Name: Hello word. если я просто ввожу ., он печатает Enter Your Name:, а затем ERROR: Stream user_input:36:18 Syntax error: Unexpected end of clause.

однако, если я запускаю скрипт в программном обеспечении, загруженном с сайта swi-prolog, он работает отлично.

это случай неправильной загрузки файла в терминал?

...