yapi
This commit is contained in:
parent
473132c3ec
commit
5b96e59311
@ -1,14 +1,13 @@
|
|||||||
|
|
||||||
if (WITH_DOCS)
|
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
|
SET( EXT
|
||||||
${DOCS_SOURCE_DIR}/custom/application.js
|
${DOCS_SOURCE_DIR}/custom/application.js
|
||||||
${DOCS_SOURCE_DIR}/custom/assets
|
${DOCS_SOURCE_DIR}/custom/assets
|
||||||
${DOCS_SOURCE_DIR}/custom/bootstrap.min.css
|
${DOCS_SOURCE_DIR}/custom/bootstrap.min.css
|
||||||
@ -32,48 +31,48 @@ SET( EXT
|
|||||||
endforeach(i ${CMAKE_HTML_EXTRA_})
|
endforeach(i ${CMAKE_HTML_EXTRA_})
|
||||||
|
|
||||||
|
|
||||||
set(DOC_DIRS_EXCLUDE_
|
set(DOC_DIRS_EXCLUDE_
|
||||||
${CMAKE_SOURCE_DIR}/build
|
${CMAKE_SOURCE_DIR}/build
|
||||||
${CMAKE_SOURCE_DIR}/Debug
|
${CMAKE_SOURCE_DIR}/Debug
|
||||||
${CMAKE_SOURCE_DIR}/packages/jpl
|
${CMAKE_SOURCE_DIR}/packages/jpl
|
||||||
${CMAKE_SOURCE_DIR}/packages/swi
|
${CMAKE_SOURCE_DIR}/packages/swi
|
||||||
${CMAKE_SOURCE_DIR}/packages/Problog/problog_examples
|
${CMAKE_SOURCE_DIR}/packages/Problog/problog_examples
|
||||||
${CMAKE_SOURCE_DIR}/packages/myddas/sqlite3/src
|
${CMAKE_SOURCE_DIR}/packages/myddas/sqlite3/src
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/6.0.1
|
${CMAKE_SOURCE_DIR}/packages/gecode/6.0.1
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/6.0.0
|
${CMAKE_SOURCE_DIR}/packages/gecode/6.0.0
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/5.1.0
|
${CMAKE_SOURCE_DIR}/packages/gecode/5.1.0
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/5.0.0
|
${CMAKE_SOURCE_DIR}/packages/gecode/5.0.0
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/4.4.0
|
${CMAKE_SOURCE_DIR}/packages/gecode/4.4.0
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/4.2.1
|
${CMAKE_SOURCE_DIR}/packages/gecode/4.2.1
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/4.2.0
|
${CMAKE_SOURCE_DIR}/packages/gecode/4.2.0
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/4.0.0
|
${CMAKE_SOURCE_DIR}/packages/gecode/4.0.0
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/3.7.3
|
${CMAKE_SOURCE_DIR}/packages/gecode/3.7.3
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/3.7.2
|
${CMAKE_SOURCE_DIR}/packages/gecode/3.7.2
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/3.7.1
|
${CMAKE_SOURCE_DIR}/packages/gecode/3.7.1
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/3.7.0
|
${CMAKE_SOURCE_DIR}/packages/gecode/3.7.0
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/3.6.0
|
${CMAKE_SOURCE_DIR}/packages/gecode/3.6.0
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/dev
|
${CMAKE_SOURCE_DIR}/packages/gecode/dev
|
||||||
${CMAKE_SOURCE_DIR}/packages/cplint
|
${CMAKE_SOURCE_DIR}/packages/cplint
|
||||||
${CMAKE_SOURCE_DIR}/packages/CLPBN/examples
|
${CMAKE_SOURCE_DIR}/packages/CLPBN/examples
|
||||||
${CMAKE_SOURCE_DIR}/packages/CLPBN/horus
|
${CMAKE_SOURCE_DIR}/packages/CLPBN/horus
|
||||||
${CMAKE_SOURCE_DIR}/packages/cuda
|
${CMAKE_SOURCE_DIR}/packages/cuda
|
||||||
${CMAKE_SOURCE_DIR}/packages/prosqlite
|
${CMAKE_SOURCE_DIR}/packages/prosqlite
|
||||||
${CMAKE_SOURCE_DIR}/packages/pyswip
|
${CMAKE_SOURCE_DIR}/packages/pyswip
|
||||||
${CMAKE_SOURCE_DIR}/packages/python/yap_kernel
|
${CMAKE_SOURCE_DIR}/packages/python/yap_kernel
|
||||||
${CMAKE_SOURCE_DIR}/packages/python/swig
|
${CMAKE_SOURCE_DIR}/packages/python/swig
|
||||||
${CMAKE_SOURCE_DIR}/packages/yap-lbfgs/liblbfgs-1.10
|
${CMAKE_SOURCE_DIR}/packages/yap-lbfgs/liblbfgs-1.10
|
||||||
${CMAKE_SOURCE_DIR}/packages/swi-minisat2
|
${CMAKE_SOURCE_DIR}/packages/swi-minisat2
|
||||||
${CMAKE_SOURCE_DIR}/library/dialect/swi/os
|
${CMAKE_SOURCE_DIR}/library/dialect/swi/os
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
set(DOCS_EXCLUDE_
|
set(DOCS_EXCLUDE_
|
||||||
${CMAKE_SOURCE_DIR}/C/traced_absmi_insts.h
|
${CMAKE_SOURCE_DIR}/C/traced_absmi_insts.h
|
||||||
${CMAKE_SOURCE_DIR}/H/globals.h
|
${CMAKE_SOURCE_DIR}/H/globals.h
|
||||||
${CMAKE_SOURCE_DIR}/OPTYap/locks_alpha_funcs.h
|
${CMAKE_SOURCE_DIR}/OPTYap/locks_alpha_funcs.h
|
||||||
${CMAKE_SOURCE_DIR}/OPTYap/locks_mips_funcs.h
|
${CMAKE_SOURCE_DIR}/OPTYap/locks_mips_funcs.h
|
||||||
${CMAKE_SOURCE_DIR}/OPTYap/locks_sparc.h
|
${CMAKE_SOURCE_DIR}/OPTYap/locks_sparc.h
|
||||||
${CMAKE_SOURCE_DIR}/*/bprolog/*
|
${CMAKE_SOURCE_DIR}/*/bprolog/*
|
||||||
${CMAKE_SOURCE_DIR}/*/prism/*
|
${CMAKE_SOURCE_DIR}/*/prism/*
|
||||||
${CMAKE_SOURCE_DIR}/*/gecode/[345]*
|
${CMAKE_SOURCE_DIR}/*/gecode/[345]*
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/gecode3_yap.cc
|
${CMAKE_SOURCE_DIR}/packages/gecode/gecode3_yap.cc
|
||||||
@ -86,21 +85,21 @@ ${CMAKE_SOURCE_DIR}/*/bprolog/*
|
|||||||
${CMAKE_SOURCE_DIR}/packages/gecode/gecode4_yap_hand_written.yap
|
${CMAKE_SOURCE_DIR}/packages/gecode/gecode4_yap_hand_written.yap
|
||||||
${CMAKE_SOURCE_DIR}/packages/gecode/gecode5_yap_hand_written.yap
|
${CMAKE_SOURCE_DIR}/packages/gecode/gecode5_yap_hand_written.yap
|
||||||
*/CMakeFiles/*
|
*/CMakeFiles/*
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
foreach(i ${DOCS_EXCLUDE_})
|
foreach(i ${DOCS_EXCLUDE_})
|
||||||
string(APPEND DOCS_EXCLUDE ${i} " ")
|
string(APPEND DOCS_EXCLUDE ${i} " ")
|
||||||
endforeach(i ${DOCS_EXCLUDE_})
|
endforeach(i ${DOCS_EXCLUDE_})
|
||||||
|
|
||||||
|
|
||||||
foreach(i ${DOCS_DIR_EXCLUDE_})
|
foreach(i ${DOCS_DIR_EXCLUDE_})
|
||||||
string(APPEND DOCS_DIR_EXCLUDE ${i} " ")
|
string(APPEND DOCS_DIR_EXCLUDE ${i} " ")
|
||||||
endforeach(i ${DOCS_DIR_EXCLUDE_})
|
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)
|
||||||
@ -110,7 +109,6 @@ endforeach(i ${DOCS_DIR_EXCLUDE_})
|
|||||||
SET(DOC_INPUT_FILES_
|
SET(DOC_INPUT_FILES_
|
||||||
${CMAKE_SOURCE_DIR}/docs/md
|
${CMAKE_SOURCE_DIR}/docs/md
|
||||||
${CMAKE_SOURCE_DIR}/pl
|
${CMAKE_SOURCE_DIR}/pl
|
||||||
${CMAKE_SOURCE_DIR}/packages/ProbLog
|
|
||||||
${CMAKE_SOURCE_DIR}/CXX
|
${CMAKE_SOURCE_DIR}/CXX
|
||||||
${CMAKE_SOURCE_DIR}/OPTYap
|
${CMAKE_SOURCE_DIR}/OPTYap
|
||||||
${CMAKE_SOURCE_DIR}/C
|
${CMAKE_SOURCE_DIR}/C
|
||||||
@ -119,14 +117,14 @@ endforeach(i ${DOCS_DIR_EXCLUDE_})
|
|||||||
${CMAKE_SOURCE_DIR}/os
|
${CMAKE_SOURCE_DIR}/os
|
||||||
${CMAKE_SOURCE_DIR}/library
|
${CMAKE_SOURCE_DIR}/library
|
||||||
${CMAKE_SOURCE_DIR}/swi/library
|
${CMAKE_SOURCE_DIR}/swi/library
|
||||||
#${CMAKE_SOURCE_DIR}/packages
|
${CMAKE_SOURCE_DIR}/packages
|
||||||
${CMAKE_SOURCE_DIR}/BEAM
|
${CMAKE_SOURCE_DIR}/BEAM
|
||||||
)
|
)
|
||||||
|
|
||||||
foreach(i ${DOC_INPUT_FILES_})
|
foreach(i ${DOC_INPUT_FILES_})
|
||||||
|
|
||||||
string(APPEND DOC_INPUT_FILES ${i} " ")
|
string(APPEND DOC_INPUT_FILES ${i} " ")
|
||||||
endforeach(i ${DOC_INPUT_FILES_})
|
endforeach(i ${DOC_INPUT_FILES_})
|
||||||
|
|
||||||
set(doxyfile ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
|
set(doxyfile ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
|
||||||
configure_file(${doxyfile_in} ${doxyfile} @ONLY)
|
configure_file(${doxyfile_in} ${doxyfile} @ONLY)
|
||||||
@ -134,7 +132,7 @@ endforeach(i ${DOC_INPUT_FILES_})
|
|||||||
configure_file(${CMAKE_SOURCE_DIR}/docs/source/conf.py.in source/conf.py)
|
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)
|
configure_file(${CMAKE_SOURCE_DIR}/docs/source/index.rst source/index.rst)
|
||||||
|
|
||||||
add_custom_target(docs
|
add_custom_target(docs
|
||||||
COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile}
|
COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ This text includes instructions to download and install YAP.
|
|||||||
|
|
||||||
[TOC]
|
[TOC]
|
||||||
|
|
||||||
## Downloading YAP {#Download}
|
@section Download Downloading YAP
|
||||||
|
|
||||||
The latest development version of Yap-6 is available source-only
|
The latest development version of Yap-6 is available source-only
|
||||||
through GIT repositories. The main reference repository is at
|
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),
|
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:
|
It may be useful to know:
|
||||||
|
|
||||||
@ -44,7 +44,7 @@ to only include the last `XX` commits.
|
|||||||
version of doxygen adapted to Prolog that was used to generate
|
version of doxygen adapted to Prolog that was used to generate
|
||||||
these documents.
|
these documents.
|
||||||
|
|
||||||
## CompilingYAP Compiling YAP
|
@section CompilingYAP Compiling YAP
|
||||||
|
|
||||||
|
|
||||||
YAP-6.3.4 is a [cmake](www.cmake.org) based
|
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
|
Studio, and because it includes packaging suppport, The steps required
|
||||||
to install core YAP under `cmake` are presented in detail next.
|
to install core YAP under `cmake` are presented in detail next.
|
||||||
|
|
||||||
### Compilation The compiler
|
@subsubsection Compilation The compiler
|
||||||
|
|
||||||
*Status as of early 2017*
|
*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
|
YAP compiles cleanly under cross-compilers, and we have used the
|
||||||
crosss-compilation system [mxe](http://mxe.cc/) system with good results.
|
crosss-compilation system [mxe](http://mxe.cc/) system with good results.
|
||||||
|
|
||||||
### cmake
|
@subsection cmake cmake
|
||||||
|
|
||||||
All Linux and BSD distributions include `cmake`, so
|
All Linux and BSD distributions include `cmake`, so
|
||||||
does [Homebrew](https://brew.sh/)
|
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,
|
If you have an older Linux you may need to compile from source,
|
||||||
available at GitHub.
|
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
|
+ YAP requires [gmp]{https://gmplib.org/} for infinite precision
|
||||||
integer and rational. Please ensure the development pacakage
|
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,
|
+ 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`).
|
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.
|
*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`.
|
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.
|
* 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
|
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.
|
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:
|
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:
|
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 ..
|
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
|
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.
|
should be similar for Linux machines. We assume you have downloaded both the Android NDK and the Android SDK.
|
||||||
|
@ -1,23 +1,21 @@
|
|||||||
@defgroup YAPProgramming Programming in YAP
|
Programming in YAP {#YAPProgramming}
|
||||||
|
=================
|
||||||
@{
|
|
||||||
|
|
||||||
[TOC]
|
[TOC]
|
||||||
|
|
||||||
@}
|
|
||||||
|
|
||||||
@defgroup load_files Loading and Organizing YAP Programs
|
@defgroup load_files Loading and Organizing YAP Programs
|
||||||
|
@ingroup YAPProgramming
|
||||||
@{
|
@{
|
||||||
|
|
||||||
We present the main predicates and directives available to load
|
We present the main predicates and directives available to load
|
||||||
files and to control the Prolog environment.
|
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
|
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
|
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`.
|
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
|
The module system allows one to _explicitly_ specify the source mode for
|
||||||
a clause by prefixing a clause with its module, say:
|
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.
|
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
|
the current file defines module _M_ with exports _L_. The list may include
|
||||||
|
|
||||||
+ predicate indicators
|
+ predicate indicators
|
||||||
|
@ -7,8 +7,8 @@ We next describe how to invoke YAP in Unix systems.
|
|||||||
|
|
||||||
[TOC]
|
[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
|
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
|
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.
|
+ 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
|
YAP can also be used to run Prolog files as scripts, at least in
|
||||||
|
@ -56,7 +56,7 @@ Please do refer to the SWI-Prolog home page:
|
|||||||
|
|
||||||
for more information on SWI-Prolog and the SWI packages.
|
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
|
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
|
The Quintus Prolog system was the first Prolog compiler to use Warren's
|
||||||
Abstract Machine. This system was very influential in the Prolog
|
Abstract Machine. This system was very influential in the Prolog
|
||||||
@ -130,8 +129,9 @@ SICStus Prolog or SWI-Prolog.
|
|||||||
|
|
||||||
+ This list is incomplete.
|
+ 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
|
The Prolog standard was developed by ISO/IEC JTC1/SC22/WG17, the
|
||||||
international standardization working group for the programming language
|
international standardization working group for the programming language
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
NOTE: this version of YAP is still experimental, documentation may be missing or out of date.
|
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
|
This document provides User information on version 6.3.4 of
|
||||||
YAP (<em>Yet Another Prolog</em>). The YAP Prolog System is a
|
YAP (<em>Yet Another Prolog</em>). The YAP Prolog System is a
|
||||||
|
@ -749,7 +749,7 @@ IfTrue
|
|||||||
CodeMirror.defineOption(
|
CodeMirror.defineOption(
|
||||||
"prologKeys", true, function(cm, editor, prev) {
|
"prologKeys", true, function(cm, editor, prev) {
|
||||||
document = cm.getDoc();
|
document = cm.getDoc();
|
||||||
if (nnprev && prev != CodeMirror.Init)
|
if (prev && prev != CodeMirror.Init)
|
||||||
cm.removeKeyMap("prolog");
|
cm.removeKeyMap("prolog");
|
||||||
if (true) {
|
if (true) {
|
||||||
var map = {
|
var map = {
|
||||||
|
@ -27,7 +27,7 @@ library = namedtuple('library', 'list')
|
|||||||
v = namedtuple('_', 'slot')
|
v = namedtuple('_', 'slot')
|
||||||
load_files = namedtuple('load_files', 'file ofile args')
|
load_files = namedtuple('load_files', 'file ofile args')
|
||||||
python_query = namedtuple('python_query', 'query_mgr string')
|
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' )
|
enter_cell = namedtuple('enter_cell', 'self' )
|
||||||
exit_cell = namedtuple('exit_cell', 'self' )
|
exit_cell = namedtuple('exit_cell', 'self' )
|
||||||
completions = namedtuple('completions', 'txt self' )
|
completions = namedtuple('completions', 'txt self' )
|
||||||
@ -569,7 +569,7 @@ class YAPRun(InteractiveShell):
|
|||||||
self.answers = []
|
self.answers = []
|
||||||
self.os = program+squery
|
self.os = program+squery
|
||||||
self.iterations = 0
|
self.iterations = 0
|
||||||
pg = jupyter_query( self, program, squery)
|
pg = jupyter_call( self, program, squery)
|
||||||
self.query = self.yapeng.query(pg)
|
self.query = self.yapeng.query(pg)
|
||||||
self.answers = []
|
self.answers = []
|
||||||
self.port = "call"
|
self.port = "call"
|
||||||
@ -580,7 +580,7 @@ class YAPRun(InteractiveShell):
|
|||||||
#sys.stderr.write('C '+ str(self.port) +'\n'+'\n')
|
#sys.stderr.write('C '+ str(self.port) +'\n'+'\n')
|
||||||
found = True
|
found = True
|
||||||
print( "uek",self.answer )
|
print( "uek",self.answer )
|
||||||
self.answers += [self.answer]
|
#self.answers += [self.answer]
|
||||||
print( "ek",self.answers )
|
print( "ek",self.answers )
|
||||||
self.iterations += 1
|
self.iterations += 1
|
||||||
if self.port == "exit" or stop or howmany == self.iterations:
|
if self.port == "exit" or stop or howmany == self.iterations:
|
||||||
|
Reference in New Issue
Block a user