LINUX.ORG.RU

Не могу скомпилять «Hello, world» на Mercury

 , mercurylang


0

3

Следую «книге» Ральфа Бекета ( http://www.mercurylang.org/documentation/papers/book.pdf ), последняя редакция 2010-06-30 11:58.

Пишу такой файл hello.m:

:- module hello.
:- interface.
:- import_module io.
:- pred main(io::di, io::uo) is det.

:- implementation.
main(IOState_in, IO_out) :-
	io.write_string("Hello, world!\n", IOState_in, IO_out).

Пытаюсь его собрать:

% mmc --make hello  
Making Mercury/int3s/hello.int3
** Error: error reading file `builtin.m' to generate dependencies.
** Module `builtin' is imported or included by module `hello'.
mercury_compile: cannot find source for module `builtin' in directories .

Как исправить эту ошибку?

Может быть, с инсталляцией компилятора (13.05.1, собран из исходников) какая-то проблема? Но при сборке и установке вроде никаких ошибок не было. Устанавливал, правда, при помощи checkinstall.

★★★★★

Хм-м...
Все эти файлы есть в той директории, где я собирал mercury, но они почему-то не установились... или они не должны были?
Странно.
Попробую переустановить без checkinstall (да поможет мне Патрик). Все равно оно все в одну директорию /usr/local/mercury-версия сваливает.

proud_anon ★★★★★
() автор топика
Ответ на: комментарий от anonymous

А вот если бы у тебя был нормальный дистр - всё бы заработало ещё вчера. Смекаешь?

У меня Убунта. Но в репах Mercury нет. А «да поможет Патрик» — потому что подобные действия приводят к ослаквариванию дистра, пожтому для них нужно благословение Патрика.

proud_anon ★★★★★
() автор топика

Периодически пишу на этой штуке, годнота. Попробовал поставить через make install? У меня установлено в /opt, все работает.

buddhist ★★★★★
()
Ответ на: комментарий от buddhist

Периодически пишу на этой штуке, годнота.

В чем проявляется годность? Вообще и в сравнении с Haskell и/или Clean например.

korvin_ ★★★★★
()
Ответ на: комментарий от proud_anon

У меня Убунта. Но в репах Mercury нет. А «да поможет Патрик» — потому что подобные действия приводят к ослаквариванию дистра, пожтому для них нужно благословение Патрика.

вообще-то тебе надо валить своё криворучье на Марка, а не на Патрега.

сейчас сам попробую..

drBatty ★★
()

В самом деле, проблема была с checkinstall. При помощи make install все установилось правильно, и хэллоуворлд собрался.

Причем, я даже не могу так сходу понять, какие именно файлы checkinstall запарывал... впрочем, я не подумал сделать списка контрольных сумм.

proud_anon ★★★★★
() автор топика
Ответ на: комментарий от buddhist

Это хаскель с запиленным прологом же.

Ой... я надеялся на Пролог с запиленным Хаскелем. Впрочем, надо пробовать, раз уже поставил... :)

proud_anon ★★★★★
() автор топика
Ответ на: комментарий от buddhist

Ну вообще, вы правы, хаскель с запиленным прологом — это карри :)

А меркьюри с запиленным прологом — это Фредди? :)

static_lab ★★★★★
()
Ответ на: комментарий от proud_anon

При помощи make install все установилось правильно, и хэллоуворлд собрался.

Вот он - вред от выеживаний. Ставь в /usr/local или /opt по вкусу, и не слушай хейтеров.

annulen ★★★★★
()

Какой-то сомнительный сахар вместо монад, if/then вместо guards. Оно правда нужно? А зачем, если не секрет?

dmfd
()

Алсо, я часто использую C#-grade и с нетерпением жду допиливания эрланговского (сам бы помог, да некогда и знания эрланга не хватает).

buddhist ★★★★★
()
Ответ на: комментарий от ymn

В смысле, сишарповский бэкенд к Mercury. По работе много у кого винда, а кросскомпилять неохота :)

buddhist ★★★★★
()
Последнее исправление: buddhist (всего исправлений: 1)
Ответ на: комментарий от buddhist

подписался на тег. язык интересный)

ymn ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.