Печать символов Юникода в Poly/ML

Как напечатать строчный греческий эпсилон в SML (используя Poly/ML)?

Я пробовал следующее:

print "ε"; (* Error-unprintable character found in file *)
print "\u03B5"; (* Error-Conversion exception (Invalid string constant) raised while converting \u03B5 to string *)

Это просто невозможно? Конечно, работа терминала заключается в том, чтобы фактически визуализировать символ, и, следовательно, должна быть возможна печать необработанного кода символа в стандартный вывод?

1 ответ

Решение

Escape-последовательность Unicode \u03B5 соответствует UTF-16.

Ваш терминал, вероятно, работает с UTF-8, в котором ε равно 0xCE 0xB5. Ввод их в виде десятичных байтов:

> print "\206\181\n";
ε
Другие вопросы по тегам