mercury

    9

    2答えて

    私はPrologの力にかなり驚いていました。頭を浮かべるまでには時間がかかっていましたが、私にとってはそれがそこで最もクールな宣言的言語であるようでした。だからこそ、最近、Scalaを使った2年間の関数型プログラミングの2年後に、論理プログラミングをもう一度見て、実際の使用のために「自分の脳を鍛える」か、より良いものにすることに決めました。 宣言的パラダイムの両方の概念を習得するために、機能的プロ

    2

    1答えて

    私は水銀中の初心者です。この問題を解決するのは難しいです。私は、リストを小規模から高頻度にソートされたタプルのリストに変換したい。例: string.to_char_list("this is a test") becomes [{'a', 1}, {'e', 1}, {'h', 1}, {'i', 2}, {' ', 3}, {'s', 3}, {'t', 3}] OR [3,2,1

    4

    1答えて

    私はすでにWindows 7のPCにもインストールCygwinを http://www.mercury.csse.unimelb.edu.au/download/release.html からマーキュリー11.07.1をダウンロードして。しかし、私は水銀をインストールする方法を知らない。誰かインストールガイドで私を助けることができますか?

    2

    3答えて

    さまざまな値と名前を持つことができるMercuryでデータ型を宣言したいと思います。たとえば、 type goal ---> pick; give; come. には3つの変数/値があります。変数の数が制限されたり固定されていないことを type myplayer ---> de value declaration here. : は、私のような何かをしたいです。 v1, v2, v3 a

    4

    3答えて

    私は以下マーキュリーコードをコンパイルするとき、私は、コンパイラからこのエラーを取得する: In clause for `main(di, uo)': in argument 1 of call to predicate `test_with_anonymous_functions.assert_equals'/5: mode error: variable `V_1

    3

    1答えて

    私はMercuryとロジックプログラミングには一般的に新しいです。これにより :- pred diffThirtyFour(float, float). :- mode diffThirtyFour(in, out) is det. diffThirtyFour(A,B) :- (B = A + 34.0). 、Aは地面でなければならない、とBは自由である:私は を例述語を取る

    1

    2答えて

    に私は最近、マーキュリーでは、このコード例に出くわした: append(X,Y,Z) :- X == [], Z := Y. append(X,Y,Z) :- X => [H | T], append(T,Y,NT), Z <= [H | NT]. はPrologのプログラマである、私は疑問に思う:ノーマル統一= との違いは何:=または=>こ