1

私はswi prologを使用しており、logtalkをインストールしました。
一部のサンプル プロジェクトで logtalk_load を呼び出すと、常に false が返されます。

% library(win_menu) compiled into win_menu 0.00 sec, 29 clauses
%   C:\Logtalk/configs/swi.pl compiled 0.02 sec, 1,539 clauses
%   C:\Logtalk\users\kikijiki/libpaths/libpaths.pl compiled 0.02 sec, 108 clauses
%   C:\Logtalk/integration/logtalk_comp_swi.pl compiled 0.11 sec, 2,626 clauses
%   c:/logtalk/users/kikijiki/settings.pl compiled 0.00 sec, 3 clauses

Logtalk 2.44.1
Copyright (c) 1998-2012 Paulo Moura

Default lint compilation flags: 
  unknown: warning, misspelt: warning, lgtredef: warning, plredef: silent
  portability: silent, missing_directives: warning
  singletons: warning, underscore_variables: singletons
Default documenting compilation flags:
  xmldocs: on, xmlspec: dtd, xmlsref: local, xslfile: lgtxml.xsl
Default directories compiler flags:
  altdirs: on, tmpdir: lgt_tmp/, xmldir: xml_docs/
Default optional features compiler flags:
  complements: deny, dynamic_declarations: deny
  context_switching_calls: allow, events: deny
Other default compilation flags:
  startup_message: flags, report: on
  code_prefix: $, hook: (none defined)
  optimize: off, source_data: on, debug: on
  clean: on, smart_compilation: off, reload: always
Back-end Prolog compiler and loader flags:
  prolog_compiler: []
  prolog_loader:   []
Read-only compilation flags (back-end Prolog compiler features):
  prolog_dialect: swi, break_predicate: supported, modules: supported
  threads: supported, encoding_directive: full, tabling: unsupported
  coinduction: supported

Loaded settings file found on directory c:/Logtalk/users/kikijiki.

%   C:\Logtalk/configs/swihooks.pl compiled 0.02 sec, 212 clauses
%    library(quintus) compiled into quintus 0.00 sec, 54 clauses
%    library(pce) loaded into pce 0.02 sec, 778 clauses
%   C:\Logtalk/configs/xpcehooks.pl compiled 0.02 sec, 785 clauses
%  c:\Logtalk\integration\logtalk_swi.pl compiled 0.17 sec, 5,302 clauses
% c:/users/kikijiki/appdata/roaming/swi-prolog/pl.ini compiled 0.17 sec, 5,305 clauses
XPCE 6.6.66, July 2009 for Win32: NT,2000,XP
Copyright (C) 1993-2009 University of Amsterdam.
XPCE comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to redistribute it under certain conditions.
The host-language is SWI-Prolog version 6.2.6

For HELP on prolog, please type help. or apropos(topic).
         on xpce, please type manpce.

1 ?- logtalk_load('c:/logtalk/examples/people/loader').
% <<< loading source file c:/logtalk/examples/people/loader.lgt... 
% >>> compiling source file c:/logtalk/examples/people/loader.lgt in debug mode...
false.

私は何を間違っていますか?

4

1 に答える 1

1

今後のヘルプについては、公式の Logtalk サポート チャネルを使用してください。タイムリーな返信が届きます。

logtalk_compile/1-2Logtalk 2.44.1 は、および述語での完全または相対 (現在のディレクトリ内のファイル以外) のファイル パスをサポートしていません (logtalk_load/1-2これらの述語については、リファレンス マニュアルを参照してください)。上記の場合、「people」プログラミング例をロードするには、次のいずれかを入力します。

?- logtalk_load(people(loader)).

また:

?- {people(loader)}.

これは (Logtalk のドキュメントでは) 「ライブラリ表記法」と呼ばれています (この表記法は Prolog でも見られます)。詳細については、"examples/people" フォルダー内の "NOTES.txt" と "SCRIPT.txt" を参照してください (すべての例には、これら 2 つのファイルと役立つ情報が含まれています)。

ところで、相対および完全なソース ファイル パスのサポートは、Logtalk 3 で利用できます。

于 2013-04-01T13:30:31.390 に答える