Импорт модуля Ratio с использованием ghci

Я изучаю Haskell и пытаюсь использовать точные рациональные числа. У меня есть следующий простой код Haskell:

import Ratio

x :: Rational
x = 5 % 2

Когда я загружаю это в WinHugs, все в порядке. Однако, когда я загружаю его в ghci, я получаю следующее сообщение об ошибке:

E:\devel\src\haskell\rational.hs:1:8:

Could not find module `Ratio'
It is a member of the hidden package `haskell98-2.0.0.1'.
Use -v to see a list of the files searched for.

Ошибка, модули загружены: нет.

Почему я получаю эту ошибку?

Кроме того, все хиты, которые Google дает мне для рациональных чисел в Haskell, кажутся устаревшими. Каков текущий способ выполнения точной арифметики с рациональными числами?


person Code-Apprentice    schedule 24.07.2012    source источник


Ответы (1)


Библиотека haskell98 устарела в платформе Haskell. Вам следует адаптироваться к стандарту haskell2010, который определяет рациональные числа в Data.Ratio.

person dflemstr    schedule 24.07.2012
comment
Спасибо за информацию. Я должен был упомянуть, что я только изучаю Haskell, поэтому я хочу узнать, как это сделать правильно. - person Code-Apprentice; 24.07.2012
comment
Модуль Data.Ratio прекрасно подходит для использования. Я не знаю другой библиотеки для работы с рациональными числами. - person dflemstr; 24.07.2012
comment
Как вы сказали, я пытался использовать устаревшую библиотеку haskell98. Мой последний комментарий был ответом на слово «адаптировать» в вашем ответе. Я не столько адаптируюсь, сколько учусь с нуля, что я не совсем ясно дал понять в своем вопросе. - person Code-Apprentice; 24.07.2012
comment
О, я понимаю. Я думал, что вы не считаете Data.Ratio лучшим модулем для использования, поскольку он в основном является копией (теперь устаревшего) модуля Ratio. - person dflemstr; 24.07.2012
comment
Я нахожу странным, что Google в первую очередь дал мне хиты для старого модуля Ratio. Похоже, только вторая ссылка была для Data.Rato ;-( - person Code-Apprentice; 24.07.2012
comment
@Code-Guru Используйте hoogle, haskell.org/hoogle, для поиска функций/типов, связанных с Haskell. - person augustss; 24.07.2012
comment
@augustss Сладко! Спасибо за совет. - person Code-Apprentice; 24.07.2012