2015-01-30 2 views
2

Я изучаю Haskell. Я вижу, что автор использует некоторые математические символы юникода в коде here (например, ). Я стараюсь использовать это тоже, например:Как использовать математические символы (имя функции) в ghci?

(∀) :: (a -> b) -> [a] -> [b] 
f ∀ [] = [] 
f ∀ (x:xs) = f x : f ∀ xs 

ghci нагрузки это успешно, но я не могу назвать эту функцию ... Когда я пытаюсь вставить символ в ghci консоли из буфера обмена, ничего не происходит (Windows 7, Lucida console).

Это очень удобно - использовать математические символы (на мой взгляд). Как я могу использовать его в ghci?

+0

Это может вам помочь: http://stackoverflow.com/questions/25373116/how-can-i-set-my-ghci-prompt-to-a-lambda-character-on-windows – Sibi

+0

Я сделал это ('chcp.com 65001'), но это не помогает мне. Символ 'λ' отображается успешно, но' ∀' - нет (когда я пытаюсь вставить его). О, я не могу вставить 'λ' тоже через буфер обмена ... Я могу распечатать его только через свой код ... –

+0

Кодовая страница 65001 не UTF8, она просто использует тот же механизм упаковки. –

ответ

1

Наиболее распространенный способ получения визуалы этого используется шрифт и текстовый редактор, поддерживающий ligatures, как Hasklig. Таким образом, это выглядит, как вы хотите, но он сохраняется как обычный файл ASCII, что упрощает работу с инструментами, которые не поддерживают эту технологию.

Я бы порекомендовал против с использованием фактических символов, отличных от ASCII, в качестве идентификаторов; это может быть распространено в Agda, но может быть просто раздражающим при попытке работать над одним и тем же кодом с несколькими людьми, на разных платформах и т. д.

+0

Но я вижу много символов математики в * исходниках * в книгах тоже ... Например: Ричард Берд (Оксфордский университет) «Жемчужины функционального алгоритма». –

+0

@Bush. ОК. А также? –

+0

И я подумал, что это, возможно, широко распространенный метод называния функций в Haskell (математиками). Когда я читаю книги, я также пытаюсь использовать его исходный код. –

 Смежные вопросы

  • Нет связанных вопросов^_^