単純な 3 行のコードのように見えるものを実行しようとしています
insert(X,[],[X]).
insert(X,[H|T],Z):-X>=H,Z=[X,H|T].
insert(X,[H|T],Z):-X<H,insert(X,T,Z2),Z=[H|Z2].
しかし、何らかの理由でSWISH、IDEoneなどの多くのオンライン コード コンパイラでコンパイルまたは実行することができません。問題は、「挿入」が認識された述語ではないことです。私はいくつかのグーグル検索を試みましたが、挿入するものは何もないようです。ありがとう!(プロローグ初心者でごめんなさい)
ERROR: /home/uJ0Y9U/prog:13:
No permission to modify static procedure `true/0'
Warning: /home/uJ0Y9U/prog:15:
Goal (directive) failed: user:main
ERROR: '$runtoplevel'/0: Undefined procedure: program/0
Exception: (3) program ? EOF: exit
編集: ASCII 以外の文字に問題があったようです。ERROR: /home/F3Vzlp/prog:10:21: Syntax error: Operator expected ERROR: /home/F3Vzlp/prog:11:21: Syntax error: Operator expected のエラーが発生しました。