From 5b96e59311676b3447709e39e37d5149e9743f1c Mon Sep 17 00:00:00 2001 From: Vitor Santos Costa Date: Sun, 16 Dec 2018 02:25:48 +0000 Subject: [PATCH] yapi --- docs/CMakeLists.txt | 202 +++++++++--------- docs/md/INSTALL.md | 22 +- docs/md/programming.md | 22 +- docs/md/run.md | 6 +- docs/md/swi.md | 10 +- docs/md/yap.md | 2 +- misc/editors/prolog.js | 2 +- packages/python/swig/prolog/yapi.yap | 2 +- .../python/yap_kernel/yap_ipython/yapi.py | 6 +- pl/top.yap | 2 +- 10 files changed, 136 insertions(+), 140 deletions(-) diff --git a/docs/CMakeLists.txt b/docs/CMakeLists.txt index 455106db6..49cd21179 100644 --- a/docs/CMakeLists.txt +++ b/docs/CMakeLists.txt @@ -1,16 +1,15 @@ - if (WITH_DOCS) - set (TOP_DIR YES) + set (TOP_DIR YES) -set(DOCS_SOURCE_DIR ${CMAKE_SOURCE_DIR}/docs) + set(DOCS_SOURCE_DIR ${CMAKE_SOURCE_DIR}/docs) -SET (CMAKE_HTML_EXTRA_) + SET (CMAKE_HTML_EXTRA_) -SET( EXT - ${DOCS_SOURCE_DIR}/custom/application.js - ${DOCS_SOURCE_DIR}/custom/assets + SET( EXT + ${DOCS_SOURCE_DIR}/custom/application.js + ${DOCS_SOURCE_DIR}/custom/assets ${DOCS_SOURCE_DIR}/custom/bootstrap.min.css ${DOCS_SOURCE_DIR}/custom/bootstrap.min.js ${DOCS_SOURCE_DIR}/custom/customdoxygen.css @@ -27,123 +26,122 @@ SET( EXT ${DOCS_SOURCE_DIR}/custom/yap.css ) - foreach(i ${CMAKE_HTML_EXTRA_}) - string(APPEND CMAKE_HTML_EXTRA ${i} " ") - endforeach(i ${CMAKE_HTML_EXTRA_}) + foreach(i ${CMAKE_HTML_EXTRA_}) + string(APPEND CMAKE_HTML_EXTRA ${i} " ") + endforeach(i ${CMAKE_HTML_EXTRA_}) -set(DOC_DIRS_EXCLUDE_ -${CMAKE_SOURCE_DIR}/build -${CMAKE_SOURCE_DIR}/Debug -${CMAKE_SOURCE_DIR}/packages/jpl -${CMAKE_SOURCE_DIR}/packages/swi -${CMAKE_SOURCE_DIR}/packages/Problog/problog_examples -${CMAKE_SOURCE_DIR}/packages/myddas/sqlite3/src -${CMAKE_SOURCE_DIR}/packages/gecode/6.0.1 -${CMAKE_SOURCE_DIR}/packages/gecode/6.0.0 -${CMAKE_SOURCE_DIR}/packages/gecode/5.1.0 -${CMAKE_SOURCE_DIR}/packages/gecode/5.0.0 -${CMAKE_SOURCE_DIR}/packages/gecode/4.4.0 -${CMAKE_SOURCE_DIR}/packages/gecode/4.2.1 -${CMAKE_SOURCE_DIR}/packages/gecode/4.2.0 -${CMAKE_SOURCE_DIR}/packages/gecode/4.0.0 -${CMAKE_SOURCE_DIR}/packages/gecode/3.7.3 -${CMAKE_SOURCE_DIR}/packages/gecode/3.7.2 -${CMAKE_SOURCE_DIR}/packages/gecode/3.7.1 -${CMAKE_SOURCE_DIR}/packages/gecode/3.7.0 -${CMAKE_SOURCE_DIR}/packages/gecode/3.6.0 -${CMAKE_SOURCE_DIR}/packages/gecode/dev -${CMAKE_SOURCE_DIR}/packages/cplint -${CMAKE_SOURCE_DIR}/packages/CLPBN/examples -${CMAKE_SOURCE_DIR}/packages/CLPBN/horus -${CMAKE_SOURCE_DIR}/packages/cuda -${CMAKE_SOURCE_DIR}/packages/prosqlite -${CMAKE_SOURCE_DIR}/packages/pyswip -${CMAKE_SOURCE_DIR}/packages/python/yap_kernel -${CMAKE_SOURCE_DIR}/packages/python/swig -${CMAKE_SOURCE_DIR}/packages/yap-lbfgs/liblbfgs-1.10 -${CMAKE_SOURCE_DIR}/packages/swi-minisat2 -${CMAKE_SOURCE_DIR}/library/dialect/swi/os -) + set(DOC_DIRS_EXCLUDE_ + ${CMAKE_SOURCE_DIR}/build + ${CMAKE_SOURCE_DIR}/Debug + ${CMAKE_SOURCE_DIR}/packages/jpl + ${CMAKE_SOURCE_DIR}/packages/swi + ${CMAKE_SOURCE_DIR}/packages/Problog/problog_examples + ${CMAKE_SOURCE_DIR}/packages/myddas/sqlite3/src + ${CMAKE_SOURCE_DIR}/packages/gecode/6.0.1 + ${CMAKE_SOURCE_DIR}/packages/gecode/6.0.0 + ${CMAKE_SOURCE_DIR}/packages/gecode/5.1.0 + ${CMAKE_SOURCE_DIR}/packages/gecode/5.0.0 + ${CMAKE_SOURCE_DIR}/packages/gecode/4.4.0 + ${CMAKE_SOURCE_DIR}/packages/gecode/4.2.1 + ${CMAKE_SOURCE_DIR}/packages/gecode/4.2.0 + ${CMAKE_SOURCE_DIR}/packages/gecode/4.0.0 + ${CMAKE_SOURCE_DIR}/packages/gecode/3.7.3 + ${CMAKE_SOURCE_DIR}/packages/gecode/3.7.2 + ${CMAKE_SOURCE_DIR}/packages/gecode/3.7.1 + ${CMAKE_SOURCE_DIR}/packages/gecode/3.7.0 + ${CMAKE_SOURCE_DIR}/packages/gecode/3.6.0 + ${CMAKE_SOURCE_DIR}/packages/gecode/dev + ${CMAKE_SOURCE_DIR}/packages/cplint + ${CMAKE_SOURCE_DIR}/packages/CLPBN/examples + ${CMAKE_SOURCE_DIR}/packages/CLPBN/horus + ${CMAKE_SOURCE_DIR}/packages/cuda + ${CMAKE_SOURCE_DIR}/packages/prosqlite + ${CMAKE_SOURCE_DIR}/packages/pyswip + ${CMAKE_SOURCE_DIR}/packages/python/yap_kernel + ${CMAKE_SOURCE_DIR}/packages/python/swig + ${CMAKE_SOURCE_DIR}/packages/yap-lbfgs/liblbfgs-1.10 + ${CMAKE_SOURCE_DIR}/packages/swi-minisat2 + ${CMAKE_SOURCE_DIR}/library/dialect/swi/os + ) -set(DOCS_EXCLUDE_ -${CMAKE_SOURCE_DIR}/C/traced_absmi_insts.h -${CMAKE_SOURCE_DIR}/H/globals.h -${CMAKE_SOURCE_DIR}/OPTYap/locks_alpha_funcs.h -${CMAKE_SOURCE_DIR}/OPTYap/locks_mips_funcs.h -${CMAKE_SOURCE_DIR}/OPTYap/locks_sparc.h -${CMAKE_SOURCE_DIR}/*/bprolog/* - ${CMAKE_SOURCE_DIR}/*/prism/* - ${CMAKE_SOURCE_DIR}/*/gecode/[345]* - ${CMAKE_SOURCE_DIR}/packages/gecode/gecode3_yap.cc - ${CMAKE_SOURCE_DIR}/packages/gecode/gecode4_yap.cc - ${CMAKE_SOURCE_DIR}/packages/gecode/gecode5_yap.cc - ${CMAKE_SOURCE_DIR}/packages/gecode/gecode3.yap - ${CMAKE_SOURCE_DIR}/packages/gecode/gecode4.yap - ${CMAKE_SOURCE_DIR}/packages/gecode/gecode5.yap - ${CMAKE_SOURCE_DIR}/packages/gecode/gecode3_yap_hand_written.yap - ${CMAKE_SOURCE_DIR}/packages/gecode/gecode4_yap_hand_written.yap - ${CMAKE_SOURCE_DIR}/packages/gecode/gecode5_yap_hand_written.yap - */CMakeFiles/* -) + set(DOCS_EXCLUDE_ + ${CMAKE_SOURCE_DIR}/C/traced_absmi_insts.h + ${CMAKE_SOURCE_DIR}/H/globals.h + ${CMAKE_SOURCE_DIR}/OPTYap/locks_alpha_funcs.h + ${CMAKE_SOURCE_DIR}/OPTYap/locks_mips_funcs.h + ${CMAKE_SOURCE_DIR}/OPTYap/locks_sparc.h + ${CMAKE_SOURCE_DIR}/*/bprolog/* + ${CMAKE_SOURCE_DIR}/*/prism/* + ${CMAKE_SOURCE_DIR}/*/gecode/[345]* + ${CMAKE_SOURCE_DIR}/packages/gecode/gecode3_yap.cc + ${CMAKE_SOURCE_DIR}/packages/gecode/gecode4_yap.cc + ${CMAKE_SOURCE_DIR}/packages/gecode/gecode5_yap.cc + ${CMAKE_SOURCE_DIR}/packages/gecode/gecode3.yap + ${CMAKE_SOURCE_DIR}/packages/gecode/gecode4.yap + ${CMAKE_SOURCE_DIR}/packages/gecode/gecode5.yap + ${CMAKE_SOURCE_DIR}/packages/gecode/gecode3_yap_hand_written.yap + ${CMAKE_SOURCE_DIR}/packages/gecode/gecode4_yap_hand_written.yap + ${CMAKE_SOURCE_DIR}/packages/gecode/gecode5_yap_hand_written.yap + */CMakeFiles/* + ) -foreach(i ${DOCS_EXCLUDE_}) - string(APPEND DOCS_EXCLUDE ${i} " ") -endforeach(i ${DOCS_EXCLUDE_}) + foreach(i ${DOCS_EXCLUDE_}) + string(APPEND DOCS_EXCLUDE ${i} " ") + endforeach(i ${DOCS_EXCLUDE_}) -foreach(i ${DOCS_DIR_EXCLUDE_}) - string(APPEND DOCS_DIR_EXCLUDE ${i} " ") -endforeach(i ${DOCS_DIR_EXCLUDE_}) + foreach(i ${DOCS_DIR_EXCLUDE_}) + string(APPEND DOCS_DIR_EXCLUDE ${i} " ") + endforeach(i ${DOCS_DIR_EXCLUDE_}) -# add a target to generate API documentation with Doxygen + # add a target to generate API documentation with Doxygen - set(doxyfile_in ${CMAKE_SOURCE_DIR}/docs/Doxyfile.in) + set(doxyfile_in ${CMAKE_SOURCE_DIR}/docs/Doxyfile.in) - add_subdirectory(../packages/raptor/doc ${CMAKE_BINARY_DIR}/packages/raptor/doc) + add_subdirectory(../packages/raptor/doc ${CMAKE_BINARY_DIR}/packages/raptor/doc) - SET(DOC_INPUT_FILES_ - ${CMAKE_SOURCE_DIR}/docs/md - ${CMAKE_SOURCE_DIR}/pl - ${CMAKE_SOURCE_DIR}/packages/ProbLog - ${CMAKE_SOURCE_DIR}/CXX - ${CMAKE_SOURCE_DIR}/OPTYap - ${CMAKE_SOURCE_DIR}/C - ${CMAKE_SOURCE_DIR}/H - ${CMAKE_SOURCE_DIR}/include - ${CMAKE_SOURCE_DIR}/os - ${CMAKE_SOURCE_DIR}/library - ${CMAKE_SOURCE_DIR}/swi/library - #${CMAKE_SOURCE_DIR}/packages - ${CMAKE_SOURCE_DIR}/BEAM - ) + SET(DOC_INPUT_FILES_ + ${CMAKE_SOURCE_DIR}/docs/md + ${CMAKE_SOURCE_DIR}/pl + ${CMAKE_SOURCE_DIR}/CXX + ${CMAKE_SOURCE_DIR}/OPTYap + ${CMAKE_SOURCE_DIR}/C + ${CMAKE_SOURCE_DIR}/H + ${CMAKE_SOURCE_DIR}/include + ${CMAKE_SOURCE_DIR}/os + ${CMAKE_SOURCE_DIR}/library + ${CMAKE_SOURCE_DIR}/swi/library + ${CMAKE_SOURCE_DIR}/packages + ${CMAKE_SOURCE_DIR}/BEAM + ) -foreach(i ${DOC_INPUT_FILES_}) + foreach(i ${DOC_INPUT_FILES_}) - string(APPEND DOC_INPUT_FILES ${i} " ") -endforeach(i ${DOC_INPUT_FILES_}) + string(APPEND DOC_INPUT_FILES ${i} " ") + endforeach(i ${DOC_INPUT_FILES_}) - set(doxyfile ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile) - configure_file(${doxyfile_in} ${doxyfile} @ONLY) + set(doxyfile ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile) + configure_file(${doxyfile_in} ${doxyfile} @ONLY) - configure_file(${CMAKE_SOURCE_DIR}/docs/source/conf.py.in source/conf.py) - configure_file(${CMAKE_SOURCE_DIR}/docs/source/index.rst source/index.rst) - -add_custom_target(docs - COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile} - ) + configure_file(${CMAKE_SOURCE_DIR}/docs/source/conf.py.in source/conf.py) + configure_file(${CMAKE_SOURCE_DIR}/docs/source/index.rst source/index.rst) + + add_custom_target(docs + COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile} + ) - if (EXISTS ${CMAKE_CURRENT_BINARY_DIR}/html) - install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html DESTINATION ${docdir}) + if (EXISTS ${CMAKE_CURRENT_BINARY_DIR}/html) + install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html DESTINATION ${docdir}) - install(FILES ${CODES} DESTINATION ${docdir}) - endif() + install(FILES ${CODES} DESTINATION ${docdir}) + endif() endif() diff --git a/docs/md/INSTALL.md b/docs/md/INSTALL.md index d2042b8d8..5d28f4063 100644 --- a/docs/md/INSTALL.md +++ b/docs/md/INSTALL.md @@ -5,7 +5,7 @@ This text includes instructions to download and install YAP. [TOC] -## Downloading YAP {#Download} +@section Download Downloading YAP The latest development version of Yap-6 is available source-only through GIT repositories. The main reference repository is at @@ -26,7 +26,7 @@ The first argument is the repository, the last argument is the (optional) target There are a variety of graphical interfaces to `git`, including GitHub's own [GitHub Desktop](https://desktop.github.com/) that supports Microsoft Windows and Apple OSX. A list with GUI applications, editor integration, and much more can be found at the [git Wiki](https://git.wiki.kernel.org/index.php/InterfacesFrontendsAndTools), -### Download Options +@subsection DownloadOptions Download Options It may be useful to know: @@ -43,8 +43,8 @@ to only include the last `XX` commits. including [doxygen-yap](https://github.com/vscosta/doxygen-yap), a version of doxygen adapted to Prolog that was used to generate these documents. - -## CompilingYAP Compiling YAP + +@section CompilingYAP Compiling YAP YAP-6.3.4 is a [cmake](www.cmake.org) based @@ -53,7 +53,7 @@ generate Makefiles, Ninja, Apple's XCode, VisualStudio and ANdroid Studio, and because it includes packaging suppport, The steps required to install core YAP under `cmake` are presented in detail next. -### Compilation The compiler +@subsubsection Compilation The compiler *Status as of early 2017* @@ -70,7 +70,7 @@ to install core YAP under `cmake` are presented in detail next. YAP compiles cleanly under cross-compilers, and we have used the crosss-compilation system [mxe](http://mxe.cc/) system with good results. -### cmake +@subsection cmake cmake All Linux and BSD distributions include `cmake`, so does [Homebrew](https://brew.sh/) @@ -85,7 +85,7 @@ the [CMake site](https://www.cmake.org). If you have an older Linux you may need to compile from source, available at GitHub. -### Ensure that you have other necessary packages installed: +@subsection extrapacks Ensure that you have other necessary packages installed: + YAP requires [gmp]{https://gmplib.org/} for infinite precision integer and rational. Please ensure the development pacakage @@ -106,7 +106,7 @@ available at GitHub. + make sure to install Python-3, and not Python-2, -### Compiling Compile and Install +@subsection Compiling2 Compile and Install 1: Create a directory, say `Build` and `cd` to the directory (`cd Build`). *YAP should not be compiled at its rootxo directory, some packages do not allow for that. @@ -120,7 +120,7 @@ available at GitHub. 5: If you feel satisfied with the result, do `make install`. * In most systems you will need to be superuser in order to do `make install` and `make info` on the standard directories. -#### Tuning the Functionality of YAP +@subsection TuningYAP the Functionality of YAP By default, YAP supports tabling, depth first search, and most features found in modern Prologs. In some cases, you may want to suport extra features, or reduce system size. @@ -181,7 +181,7 @@ You can also use `xcodebuild` from the command line. Bext follow instructions to fully compile YAP: -### Compilation Notes for OSX/Brew +@subsection TuningBrew Compilation Notes for OSX/Brew Next follows a detailed description of a full install of YAP, including all the packages that YAP can use: @@ -214,7 +214,7 @@ brew install cudd cmake -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl .. ~~~~~ -### Compilation Notes for Android +@sususbsection TuningDroid Compilation Notes for Android Next we present the compilation process for Android. The environment is an OSX, but steps should be similar for Linux machines. We assume you have downloaded both the Android NDK and the Android SDK. diff --git a/docs/md/programming.md b/docs/md/programming.md index 76a9d513d..638207058 100644 --- a/docs/md/programming.md +++ b/docs/md/programming.md @@ -1,23 +1,21 @@ -@defgroup YAPProgramming Programming in YAP - -@{ +Programming in YAP {#YAPProgramming} +================= [TOC] -@} @defgroup load_files Loading and Organizing YAP Programs - +@ingroup YAPProgramming @{ We present the main predicates and directives available to load files and to control the Prolog environment. - -[TOC] + [TOC] @} -@defgroup YAPModules The YAP Module system +@section YAPModules The YAP Module system +@ingroup YAPProgramming @{ The YAP module system is based on the Quintus/SISCtus module @@ -57,7 +55,7 @@ We present the main predicates and directives available to load it starts consulting a file, and resets it at the end. One can set the type-in module permanently by using the built-in `module/1`. - ### Explicit Naming {#ExplicitNaming} + @subsection ExplicitNaming Explicit Naming The module system allows one to _explicitly_ specify the source mode for a clause by prefixing a clause with its module, say: @@ -245,9 +243,9 @@ We present the main predicates and directives available to load The state of the module system after this error is undefined. - ### Built-In predicates {#ModuleBuiltins) +@subsection ModuleBuiltins Built-In predicates - @\pred module(+ M:atom,+ L:list ) is directive + @pred module(+ M:atom,+ L:list ) is directive the current file defines module _M_ with exports _L_. The list may include + predicate indicators @@ -337,7 +335,7 @@ We present the main predicates and directives available to load + library( +File ) a library file to import into the current module. - + + hide( +Opt) if _Opt_ is `false`, keep source code for current module, if `true`, disable. diff --git a/docs/md/run.md b/docs/md/run.md index d382dc6be..ed32ea1a2 100644 --- a/docs/md/run.md +++ b/docs/md/run.md @@ -7,8 +7,8 @@ We next describe how to invoke YAP in Unix systems. [TOC] -Running YAP Interactively {#Running_YAP_Interactively} --------------------------- +@section Running_YAP_Interactively Running YAP Interactively + Most often you will want to use YAP in interactive mode. Assuming that YAP is in the user's search path, the top-level can be invoked under @@ -87,7 +87,7 @@ the environment variable YAPBINDIR. + YAP will try to find library files from the YAPSHAREDIR/library directory. -Running Prolog Files {#Running_Prolog_Files} +@section RunningScripts Running Prolog Files -------------------- YAP can also be used to run Prolog files as scripts, at least in diff --git a/docs/md/swi.md b/docs/md/swi.md index c4d81dcbe..5f085f7f3 100644 --- a/docs/md/swi.md +++ b/docs/md/swi.md @@ -56,7 +56,7 @@ Please do refer to the SWI-Prolog home page: for more information on SWI-Prolog and the SWI packages. -#### Compatibility with the C-Prolog interpreter {#ChYProlog} +@section ChYProlog Compatibility with the C-Prolog interpreter YAP was designed so that most C-Prolog programs should run under YAP @@ -97,8 +97,7 @@ or by using: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Compatibility with the Quintus and SICStus Prolog systems ---------------------------------------------------------- +@section QuiSics Compatibility with the Quintus and SICStus Prolog systems The Quintus Prolog system was the first Prolog compiler to use Warren's Abstract Machine. This system was very influential in the Prolog @@ -130,8 +129,9 @@ SICStus Prolog or SWI-Prolog. + This list is incomplete. -Compatibility with the ISO Prolog standard ------------------------------------------- + +@section ISOCompat Compatibility with the ISO Prolog standard + The Prolog standard was developed by ISO/IEC JTC1/SC22/WG17, the international standardization working group for the programming language diff --git a/docs/md/yap.md b/docs/md/yap.md index 364594002..d589d4a4d 100644 --- a/docs/md/yap.md +++ b/docs/md/yap.md @@ -7,7 +7,7 @@ NOTE: this version of YAP is still experimental, documentation may be missing or out of date. -## Introduction + @section Introduction Introduction This document provides User information on version 6.3.4 of YAP (Yet Another Prolog). The YAP Prolog System is a diff --git a/misc/editors/prolog.js b/misc/editors/prolog.js index 72bd11c26..7f5d4efc3 100644 --- a/misc/editors/prolog.js +++ b/misc/editors/prolog.js @@ -749,7 +749,7 @@ IfTrue CodeMirror.defineOption( "prologKeys", true, function(cm, editor, prev) { document = cm.getDoc(); - if (nnprev && prev != CodeMirror.Init) + if (prev && prev != CodeMirror.Init) cm.removeKeyMap("prolog"); if (true) { var map = { diff --git a/packages/python/swig/prolog/yapi.yap b/packages/python/swig/prolog/yapi.yap index 5cd1303c1..63e69147a 100644 --- a/packages/python/swig/prolog/yapi.yap +++ b/packages/python/swig/prolog/yapi.yap @@ -74,7 +74,7 @@ python_query( Caller, String ) :- Caller.port := Status, write_query_answer( Bindings ), nl(user_error), - maplist(in_dict(Caller.answer, Bindings), Bindings). + maplist(in_dict(Caller.answer, Bindings), Bindings). /** * diff --git a/packages/python/yap_kernel/yap_ipython/yapi.py b/packages/python/yap_kernel/yap_ipython/yapi.py index a735623ef..6e964ee83 100644 --- a/packages/python/yap_kernel/yap_ipython/yapi.py +++ b/packages/python/yap_kernel/yap_ipython/yapi.py @@ -27,7 +27,7 @@ library = namedtuple('library', 'list') v = namedtuple('_', 'slot') load_files = namedtuple('load_files', 'file ofile args') python_query = namedtuple('python_query', 'query_mgr string') -jupyter_query = namedtuple('jupyter_query', 'self text query') +jupyter_call = namedtuple('jupyter_call', 'self program query') enter_cell = namedtuple('enter_cell', 'self' ) exit_cell = namedtuple('exit_cell', 'self' ) completions = namedtuple('completions', 'txt self' ) @@ -569,7 +569,7 @@ class YAPRun(InteractiveShell): self.answers = [] self.os = program+squery self.iterations = 0 - pg = jupyter_query( self, program, squery) + pg = jupyter_call( self, program, squery) self.query = self.yapeng.query(pg) self.answers = [] self.port = "call" @@ -580,7 +580,7 @@ class YAPRun(InteractiveShell): #sys.stderr.write('C '+ str(self.port) +'\n'+'\n') found = True print( "uek",self.answer ) - self.answers += [self.answer] + #self.answers += [self.answer] print( "ek",self.answers ) self.iterations += 1 if self.port == "exit" or stop or howmany == self.iterations: diff --git a/pl/top.yap b/pl/top.yap index f509bd134..aa90af689 100644 --- a/pl/top.yap +++ b/pl/top.yap @@ -558,7 +558,7 @@ write_query_answer( Bindings ) :- '$name_vars_in_goals1'([], I, I). '$name_vars_in_goals1'([V|NGVL], I0, IF) :- - I is I0+1, + I is I0+1, '$gen_name_string'(I0,[],SName), !, atom_codes(Name, [95|SName]), V = '$VAR'(Name),