Merge ssh://ssh.dcc.fc.up.pt:31064/home/vsc/yap

This commit is contained in:
Vitor Santos Costa 2018-05-22 00:27:54 +01:00
commit 27b540b72b
22 changed files with 590 additions and 819 deletions

View File

@ -554,6 +554,13 @@ IF (WITH_PYTHON)
include(python ) include(python )
ENDIF (WITH_PYTHON) ENDIF (WITH_PYTHON)
option(WITH_R
"Allow YAP->R" ON)
IF (WITH_R)
include_directories(packages/real )
ENDIF (WITH_R)
List(APPEND YLIBS $<TARGET_OBJECTS:libOPTYap>) List(APPEND YLIBS $<TARGET_OBJECTS:libOPTYap>)
List(APPEND YLIBS $<TARGET_OBJECTS:libYAPOs>) List(APPEND YLIBS $<TARGET_OBJECTS:libYAPOs>)
@ -691,7 +698,7 @@ if (PYTHONLIBS_FOUND AND SWIG_FOUND)
if (PY_JUPYTER AND PY_WHEEL AND PY_SETUPTOOLS) if (PY_JUPYTER AND PY_WHEEL AND PY_SETUPTOOLS)
add_subdirectory(packages/python/yap_kernel) add_subdirectory(packages/python/yap_kernel)
else() else()
message("will not compile yap_kernel, as jupyter=${PY_JUPYTER};wheel=${PY_WHEEL};setutools=${PY_SETUPTOOLS}") message("will not compile yap_kernel, as jupyter=${PY_JUPYTER};wheel=${PY_WHEEL};setuptools=${PY_SETUPTOOLS}")
ENDIF () ENDIF ()
endif () endif ()

View File

@ -426,6 +426,9 @@
#define LOCAL_CommittedError (Yap_local.CommittedError) #define LOCAL_CommittedError (Yap_local.CommittedError)
#define REMOTE_CommittedError(wid) (REMOTE(wid)->CommittedError) #define REMOTE_CommittedError(wid) (REMOTE(wid)->CommittedError)
#define LOCAL_delay (Yap_local.delay)
#define REMOTE_delay(wid) (REMOTE(wid)->delay)
/// pointer to an exception term, from throw /// pointer to an exception term, from throw
#define LOCAL_IOBotch (Yap_local.IOBotch) #define LOCAL_IOBotch (Yap_local.IOBotch)
#define REMOTE_IOBotch(wid) (REMOTE(wid)->IOBotch) #define REMOTE_IOBotch(wid) (REMOTE(wid)->IOBotch)

View File

@ -2,8 +2,6 @@
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)
@ -39,6 +37,8 @@ ${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/swig ${CMAKE_SOURCE_DIR}/packages/swig
${CMAKE_SOURCE_DIR}/packages/Problog/problog_examples/output
${CMAKE_SOURCE_DIR}/packages/Problog/problog_examples/queries
${CMAKE_SOURCE_DIR}/packages/myddas/sqlite3/src ${CMAKE_SOURCE_DIR}/packages/myddas/sqlite3/src
${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
@ -59,7 +59,6 @@ ${CMAKE_SOURCE_DIR}/packages/prosqlite
${CMAKE_SOURCE_DIR}/packages/pyswip ${CMAKE_SOURCE_DIR}/packages/pyswip
${CMAKE_SOURCE_DIR}/packages/yap-lbfgs/liblbfgs-1.10 ${CMAKE_SOURCE_DIR}/packages/yap-lbfgs/liblbfgs-1.10
${CMAKE_SOURCE_DIR}/library/dialect/swi/os ${CMAKE_SOURCE_DIR}/library/dialect/swi/os
${CMAKE_SOURCE_DIR}/packages/python
${CMAKE_SOURCE_DIR}/*/bprolog/* ${CMAKE_SOURCE_DIR}/*/bprolog/*
${CMAKE_SOURCE_DIR}/*/prism/* ${CMAKE_SOURCE_DIR}/*/prism/*
${CMAKE_SOURCE_DIR}/*/gecodde/[345]* ${CMAKE_SOURCE_DIR}/*/gecodde/[345]*
@ -73,7 +72,6 @@ ${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/* *~ */#*
) )
@ -120,12 +118,7 @@ endforeach(i ${DOC_INPUT_FILES_})
add_custom_target(docs add_custom_target(docs
COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile} COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile}
COMMAND ${CMAKE_COMMAND} -E COPY ${CMAKE_SOURCE_DIR}/docs/custom/assets html/assets/ )
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Generating API documentation with Doxygen"
VERBATIM
DEPENDS ${DEPENDS})
if (EXISTS ${CMAKE_CURRENT_BINARY_DIR}/html) if (EXISTS ${CMAKE_CURRENT_BINARY_DIR}/html)

View File

@ -884,7 +884,7 @@ RECURSIVE = YES
# Note that relative paths are relative to the directory from which doxygen is # Note that relative paths are relative to the directory from which doxygen is
# run. # run.
EXCLUDE = @DOCS_EXCLUDE@ EXCLUDE =
# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or # The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded # directories that are symbolic links (a Unix file system feature) are excluded
@ -892,7 +892,7 @@ EXCLUDE = @DOCS_EXCLUDE@
# The default value is: NO. # The default value is: NO.
EXCLUDE_SYMLINKS = NO EXCLUDE_SYMLINKS = NO
# If the value of the INPUT tag contains directories, you can use the # If the value of the INPUT tag contains directories, you can use the
# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
# certain files from those directories. # certain files from those directories.
@ -2072,14 +2072,14 @@ MACRO_EXPANSION = YES
# The default value is: NO. # The default value is: NO.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
EXPAND_ONLY_PREDEF = YES EXPAND_ONLY_PREDEF = NO
# If the SEARCH_INCLUDES tag is set to YES, the include files in the # If the SEARCH_INCLUDES tag is set to YES, the include files in the
# INCLUDE_PATH will be searched if a #include is found. # INCLUDE_PATH will be searched if a #include is found.
# The default value is: YES. # The default value is: YES.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
SEARCH_INCLUDES = NO SEARCH_INCLUDES = YES
# The INCLUDE_PATH tag can be used to specify one or more directories that # The INCLUDE_PATH tag can be used to specify one or more directories that
# contain include files that are not input files but should be processed by the # contain include files that are not input files but should be processed by the
@ -2109,20 +2109,20 @@ INCLUDE_FILE_PATTERNS =
# recursively expanded use the := operator instead of the = operator. # recursively expanded use the := operator instead of the = operator.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
PREDEFINED = PREDEFINED = #
YAP_FLAG(ITEM,NAME,WRITABLE,DEF,INIT,HELPER)=ITEM \ # YAP_FLAG(ITEM,NAME,WRITABLE,DEF,INIT,HELPER)=ITEM \
START_LOCAL_FLAGS="enum THREAD_LOCAL_FLAGS {" \ # START_LOCAL_FLAGS="enum THREAD_LOCAL_FLAGS {" \
END_LOCAL_FLAGS=" };"\ # END_LOCAL_FLAGS=" };"\
START_GLOBAL_FLAGS="enum GLOBAL_FLAGS {" \ # START_GLOBAL_FLAGS="enum GLOBAL_FLAGS {" \
END_GLOBAL_FLAGS="};" \ # END_GLOBAL_FLAGS="};" \
LOCAL(A, B)="A B" \ # LOCAL(A, B)="A B" \
LOCAL_INIT(A, B, C)="A B;B = C" \ # LOCAL_INIT(A, B, C)="A B;B = C" \
LOCAL_ARRAY(A, B, C)="A B[C]" \ # LOCAL_ARRAY(A, B, C)="A B[C]" \
LOCAL_ARRAY_ARRAY(A, B, C,D)="A B[C][D]"\ # LOCAL_ARRAY_ARRAY(A, B, C,D)="A B[C][D]"\
LOCAL_INIT(A, B, C, D)="A B[C][D]"\ # LOCAL_INIT(A, B, C, D)="A B[C][D]"\
LOCAL_INITF(A, B, C)=" A B; C"\ # LOCAL_INITF(A, B, C)=" A B; C"\
LOCAL_INIT_RESTORE(A,B,C,D)="A B; C; D;"\ # LOCAL_INIT_RESTORE(A,B,C,D)="A B; C; D;"\
PREG=Yap_REGS.P_ # PREG=Yap_REGS.P_
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
# tag can be used to specify a list of macro names that should be expanded. The # tag can be used to specify a list of macro names that should be expanded. The

View File

@ -1,20 +1,20 @@
YAP packages {#packages} YAP packages {#packages}
============ ============
+ @subpage realmd + @ref real
+ @subpage BDDs + @subpage BDDs
+ @subpage gecode + @subpage gecode
+ @subpage myddas + @ref myddas
+ @ref PFL + @ref PFL
+ @subpage ProbLog1 + @subpage ProbLog1
+ @ref Python + @ref python
x
+ @subpage raptor + @subpage raptor
+ @ref YAP-LBFGS + @ref YAP-LBFGS

View File

@ -4,8 +4,8 @@
<Project> <Project>
<Option title="YAP_CLPBN"/> <Option title="YAP_CLPBN"/>
<Option makefile_is_custom="1"/> <Option makefile_is_custom="1"/>
<Option compiler="clang"/> <Option compiler="gcc"/>
<Option virtualFolders="CMake Files\;CMake Files\cmake\;CMake Files\.git\;CMake Files\.git\refs\;CMake Files\.git\refs\heads\;CMake Files\os\;CMake Files\packages\;CMake Files\packages\python\;CMake Files\packages\python\swig\;CMake Files\packages\python\swig\yap4py\;CMake Files\packages\python\yap_kernel\;CMake Files\packages\myddas\;CMake Files\packages\myddas\sqlite3\;CMake Files\packages\myddas\mysql\;CMake Files\packages\myddas\odbc\;CMake Files\packages\myddas\postgres\;CMake Files\packages\myddas\pl\;CMake Files\packages\raptor\;CMake Files\packages\raptor\cmake\;CMake Files\packages\raptor\doc\;CMake Files\packages\xml\;CMake Files\packages\CLPBN\;CMake Files\packages\CLPBN\horus\;CMake Files\packages\cplint\;CMake Files\packages\cplint\approx\;CMake Files\packages\cplint\approx\simplecuddLPADs\;CMake Files\packages\gecode\;CMake Files\packages\real\;CMake Files\packages\jpl\;CMake Files\packages\jpl\src\;CMake Files\packages\jpl\src\c\;CMake Files\packages\jpl\src\java\;CMake Files\packages\bdd\;CMake Files\packages\bdd\simplecudd\;CMake Files\packages\bdd\simplecudd_lfi\;CMake Files\packages\ProbLog\;CMake Files\packages\swi-minisat2\;CMake Files\packages\swi-minisat2\C\;CMake Files\packages\clpqr\;CMake Files\OPTYap\;CMake Files\utf8proc\;CMake Files\library\;CMake Files\library\dialect\;CMake Files\library\dialect\swi\;CMake Files\library\dialect\swi\fli\;CMake Files\library\clp\;CMake Files\library\matlab\;CMake Files\library\matrix\;CMake Files\library\random\;CMake Files\library\regex\;CMake Files\library\rltree\;CMake Files\library\system\;CMake Files\library\tries\;CMake Files\library\ytest\;CMake Files\library\lammpi\;CMake Files\CXX\;CMake Files\H\;CMake Files\pl\;CMake Files\swi\;CMake Files\swi\library\;CMake Files\docs\;CMake Files\docs\source\;"/> <Option virtualFolders="CMake Files\;CMake Files\cmake\;CMake Files\.git\;CMake Files\.git\refs\;CMake Files\.git\refs\heads\;CMake Files\os\;CMake Files\packages\;CMake Files\packages\python\;CMake Files\packages\python\swig\;CMake Files\packages\python\swig\yap4py\;CMake Files\packages\python\yap_kernel\;CMake Files\packages\myddas\;CMake Files\packages\myddas\sqlite3\;CMake Files\packages\myddas\mysql\;CMake Files\packages\myddas\odbc\;CMake Files\packages\myddas\postgres\;CMake Files\packages\myddas\pl\;CMake Files\packages\raptor\;CMake Files\packages\raptor\cmake\;CMake Files\packages\raptor\doc\;CMake Files\packages\xml\;CMake Files\packages\CLPBN\;CMake Files\packages\CLPBN\horus\;CMake Files\packages\cplint\;CMake Files\packages\gecode\;CMake Files\packages\real\;CMake Files\packages\jpl\;CMake Files\packages\bdd\;CMake Files\packages\ProbLog\;CMake Files\packages\swi-minisat2\;CMake Files\packages\swi-minisat2\C\;CMake Files\packages\clpqr\;CMake Files\OPTYap\;CMake Files\utf8proc\;CMake Files\library\;CMake Files\library\dialect\;CMake Files\library\dialect\swi\;CMake Files\library\dialect\swi\fli\;CMake Files\library\clp\;CMake Files\library\matlab\;CMake Files\library\matrix\;CMake Files\library\random\;CMake Files\library\regex\;CMake Files\library\rltree\;CMake Files\library\system\;CMake Files\library\tries\;CMake Files\library\ytest\;CMake Files\library\lammpi\;CMake Files\CXX\;CMake Files\H\;CMake Files\pl\;CMake Files\swi\;CMake Files\swi\library\;CMake Files\docs\;CMake Files\docs\source\;"/>
<Build> <Build>
<Target title="all"> <Target title="all">
<Option working_dir="/home/vsc/github/yap-6.3/packages/CLPBN"/> <Option working_dir="/home/vsc/github/yap-6.3/packages/CLPBN"/>
@ -17,92 +17,12 @@
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/Makefile&quot; VERBOSE=1 clean"/> <DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands> </MakeCommands>
</Target> </Target>
<Target title="HorusCli">
<Option output="/home/vsc/github/yap-6.3/packages/CLPBN/horus/hcli" prefix_auto="0" extension_auto="0"/>
<Option working_dir="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/>
<Option object_output="./"/>
<Option type="1"/>
<Option compiler="clang"/>
<Compiler>
<Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/>
<Add option="-DRATIONAL_TREES=1"/>
<Add option="-D_YAP_NOT_INSTALLED_=1"/>
<Add option="-DHAVE_CONFIG_H=1"/>
<Add option="-D_GNU_SOURCE"/>
<Add option="-DDEBUG=1"/>
<Add option="-DTHREADED_CODE=1"/>
<Add option="-DLOW_LEVEL_TRACER=1"/>
<Add option="-DUTF8PROC=1"/>
<Add option="-DUSE_MYDDAS=1"/>
<Add option="-DMYDDAS_SQLITE3=1"/>
<Add option="-DTABLING=1"/>
<Add directory="/home/vsc/github/yap-6.3"/>
<Add directory="/usr/include/x86_64-linux-gnu"/>
<Add directory="/home/vsc/github/yap-6.3/utf8proc"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas/sqlite3/src"/>
<Add directory="/home/vsc/github/yap-6.3/H"/>
<Add directory="/home/vsc/github/yap-6.3/H/generated"/>
<Add directory="/home/vsc/github/yap-6.3/include"/>
<Add directory="/home/vsc/github/yap-6.3/os"/>
<Add directory="/home/vsc/github/yap-6.3/OPTYap"/>
<Add directory="/home/vsc/github/yap-6.3/JIT/HPP"/>
<Add directory="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/>
</Compiler>
<MakeCommands>
<Build command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 HorusCli"/>
<CompileFile command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 &quot;$file&quot;"/>
<Clean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 clean"/>
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands>
</Target>
<Target title="HorusCli/fast">
<Option output="/home/vsc/github/yap-6.3/packages/CLPBN/horus/hcli" prefix_auto="0" extension_auto="0"/>
<Option working_dir="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/>
<Option object_output="./"/>
<Option type="1"/>
<Option compiler="clang"/>
<Compiler>
<Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/>
<Add option="-DRATIONAL_TREES=1"/>
<Add option="-D_YAP_NOT_INSTALLED_=1"/>
<Add option="-DHAVE_CONFIG_H=1"/>
<Add option="-D_GNU_SOURCE"/>
<Add option="-DDEBUG=1"/>
<Add option="-DTHREADED_CODE=1"/>
<Add option="-DLOW_LEVEL_TRACER=1"/>
<Add option="-DUTF8PROC=1"/>
<Add option="-DUSE_MYDDAS=1"/>
<Add option="-DMYDDAS_SQLITE3=1"/>
<Add option="-DTABLING=1"/>
<Add directory="/home/vsc/github/yap-6.3"/>
<Add directory="/usr/include/x86_64-linux-gnu"/>
<Add directory="/home/vsc/github/yap-6.3/utf8proc"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas/sqlite3/src"/>
<Add directory="/home/vsc/github/yap-6.3/H"/>
<Add directory="/home/vsc/github/yap-6.3/H/generated"/>
<Add directory="/home/vsc/github/yap-6.3/include"/>
<Add directory="/home/vsc/github/yap-6.3/os"/>
<Add directory="/home/vsc/github/yap-6.3/OPTYap"/>
<Add directory="/home/vsc/github/yap-6.3/JIT/HPP"/>
<Add directory="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/>
</Compiler>
<MakeCommands>
<Build command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 HorusCli/fast"/>
<CompileFile command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 &quot;$file&quot;"/>
<Clean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 clean"/>
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands>
</Target>
<Target title="horus"> <Target title="horus">
<Option output="/home/vsc/github/yap-6.3/packages/CLPBN/horus/libhorus.so" prefix_auto="0" extension_auto="0"/> <Option output="/home/vsc/github/yap-6.3/packages/CLPBN/horus/libhorus.so" prefix_auto="0" extension_auto="0"/>
<Option working_dir="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/> <Option working_dir="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/>
<Option object_output="./"/> <Option object_output="./"/>
<Option type="3"/> <Option type="3"/>
<Option compiler="clang"/> <Option compiler="gcc"/>
<Compiler> <Compiler>
<Add option="-DDEPTH_LIMIT=1"/> <Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/> <Add option="-DCOROUTINING=1"/>
@ -142,7 +62,7 @@
<Option working_dir="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/> <Option working_dir="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/>
<Option object_output="./"/> <Option object_output="./"/>
<Option type="3"/> <Option type="3"/>
<Option compiler="clang"/> <Option compiler="gcc"/>
<Compiler> <Compiler>
<Add option="-DDEPTH_LIMIT=1"/> <Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/> <Add option="-DCOROUTINING=1"/>
@ -177,6 +97,86 @@
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 clean"/> <DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands> </MakeCommands>
</Target> </Target>
<Target title="HorusCli">
<Option output="/home/vsc/github/yap-6.3/packages/CLPBN/horus/hcli" prefix_auto="0" extension_auto="0"/>
<Option working_dir="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/>
<Option object_output="./"/>
<Option type="1"/>
<Option compiler="gcc"/>
<Compiler>
<Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/>
<Add option="-DRATIONAL_TREES=1"/>
<Add option="-D_YAP_NOT_INSTALLED_=1"/>
<Add option="-DHAVE_CONFIG_H=1"/>
<Add option="-D_GNU_SOURCE"/>
<Add option="-DDEBUG=1"/>
<Add option="-DTHREADED_CODE=1"/>
<Add option="-DLOW_LEVEL_TRACER=1"/>
<Add option="-DUTF8PROC=1"/>
<Add option="-DUSE_MYDDAS=1"/>
<Add option="-DMYDDAS_SQLITE3=1"/>
<Add option="-DTABLING=1"/>
<Add directory="/home/vsc/github/yap-6.3"/>
<Add directory="/usr/include/x86_64-linux-gnu"/>
<Add directory="/home/vsc/github/yap-6.3/utf8proc"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas/sqlite3/src"/>
<Add directory="/home/vsc/github/yap-6.3/H"/>
<Add directory="/home/vsc/github/yap-6.3/H/generated"/>
<Add directory="/home/vsc/github/yap-6.3/include"/>
<Add directory="/home/vsc/github/yap-6.3/os"/>
<Add directory="/home/vsc/github/yap-6.3/OPTYap"/>
<Add directory="/home/vsc/github/yap-6.3/JIT/HPP"/>
<Add directory="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/>
</Compiler>
<MakeCommands>
<Build command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 HorusCli"/>
<CompileFile command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 &quot;$file&quot;"/>
<Clean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 clean"/>
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands>
</Target>
<Target title="HorusCli/fast">
<Option output="/home/vsc/github/yap-6.3/packages/CLPBN/horus/hcli" prefix_auto="0" extension_auto="0"/>
<Option working_dir="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/>
<Option object_output="./"/>
<Option type="1"/>
<Option compiler="gcc"/>
<Compiler>
<Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/>
<Add option="-DRATIONAL_TREES=1"/>
<Add option="-D_YAP_NOT_INSTALLED_=1"/>
<Add option="-DHAVE_CONFIG_H=1"/>
<Add option="-D_GNU_SOURCE"/>
<Add option="-DDEBUG=1"/>
<Add option="-DTHREADED_CODE=1"/>
<Add option="-DLOW_LEVEL_TRACER=1"/>
<Add option="-DUTF8PROC=1"/>
<Add option="-DUSE_MYDDAS=1"/>
<Add option="-DMYDDAS_SQLITE3=1"/>
<Add option="-DTABLING=1"/>
<Add directory="/home/vsc/github/yap-6.3"/>
<Add directory="/usr/include/x86_64-linux-gnu"/>
<Add directory="/home/vsc/github/yap-6.3/utf8proc"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas/sqlite3/src"/>
<Add directory="/home/vsc/github/yap-6.3/H"/>
<Add directory="/home/vsc/github/yap-6.3/H/generated"/>
<Add directory="/home/vsc/github/yap-6.3/include"/>
<Add directory="/home/vsc/github/yap-6.3/os"/>
<Add directory="/home/vsc/github/yap-6.3/OPTYap"/>
<Add directory="/home/vsc/github/yap-6.3/JIT/HPP"/>
<Add directory="/home/vsc/github/yap-6.3/packages/CLPBN/horus"/>
</Compiler>
<MakeCommands>
<Build command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 HorusCli/fast"/>
<CompileFile command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 &quot;$file&quot;"/>
<Clean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 clean"/>
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/CLPBN/horus/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands>
</Target>
</Build> </Build>
<Unit filename="/home/vsc/github/yap-6.3/packages/CLPBN/horus/BayesBall.cpp"> <Unit filename="/home/vsc/github/yap-6.3/packages/CLPBN/horus/BayesBall.cpp">
<Option target="horus"/> <Option target="horus"/>
@ -412,9 +412,6 @@
<Unit filename="/home/vsc/github/yap-6.3/cmake/cudd.cmake"> <Unit filename="/home/vsc/github/yap-6.3/cmake/cudd.cmake">
<Option virtualFolder="CMake Files\cmake\"/> <Option virtualFolder="CMake Files\cmake\"/>
</Unit> </Unit>
<Unit filename="/home/vsc/github/yap-6.3/cmake/cudd_config.h.cmake">
<Option virtualFolder="CMake Files\cmake\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/cmake/disallow.cmake"> <Unit filename="/home/vsc/github/yap-6.3/cmake/disallow.cmake">
<Option virtualFolder="CMake Files\cmake\"/> <Option virtualFolder="CMake Files\cmake\"/>
</Unit> </Unit>
@ -478,6 +475,9 @@
<Unit filename="/home/vsc/github/yap-6.3/packages/raptor/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/raptor/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\raptor\"/> <Option virtualFolder="CMake Files\packages\raptor\"/>
</Unit> </Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/raptor/raptor_config.h.cmake">
<Option virtualFolder="CMake Files\packages\raptor\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/raptor/cmake/FindRAPTOR.cmake"> <Unit filename="/home/vsc/github/yap-6.3/packages/raptor/cmake/FindRAPTOR.cmake">
<Option virtualFolder="CMake Files\packages\raptor\cmake\"/> <Option virtualFolder="CMake Files\packages\raptor\cmake\"/>
</Unit> </Unit>
@ -496,9 +496,6 @@
<Unit filename="/home/vsc/github/yap-6.3/packages/cplint/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/cplint/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\cplint\"/> <Option virtualFolder="CMake Files\packages\cplint\"/>
</Unit> </Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/cplint/approx/simplecuddLPADs/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\cplint\approx\simplecuddLPADs\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/gecode/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/gecode/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\gecode\"/> <Option virtualFolder="CMake Files\packages\gecode\"/>
</Unit> </Unit>
@ -511,21 +508,9 @@
<Unit filename="/home/vsc/github/yap-6.3/packages/jpl/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/jpl/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\jpl\"/> <Option virtualFolder="CMake Files\packages\jpl\"/>
</Unit> </Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/jpl/src/c/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\jpl\src\c\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/jpl/src/java/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\jpl\src\java\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/bdd/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\bdd\"/> <Option virtualFolder="CMake Files\packages\bdd\"/>
</Unit> </Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\bdd\simplecudd\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\bdd\simplecudd_lfi\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/ProbLog/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/ProbLog/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\ProbLog\"/> <Option virtualFolder="CMake Files\packages\ProbLog\"/>
</Unit> </Unit>

View File

@ -4,8 +4,8 @@
<Project> <Project>
<Option title="YAP_BDD"/> <Option title="YAP_BDD"/>
<Option makefile_is_custom="1"/> <Option makefile_is_custom="1"/>
<Option compiler="clang"/> <Option compiler="gcc"/>
<Option virtualFolders="CMake Files\;CMake Files\cmake\;CMake Files\.git\;CMake Files\.git\refs\;CMake Files\.git\refs\heads\;CMake Files\os\;CMake Files\packages\;CMake Files\packages\python\;CMake Files\packages\python\swig\;CMake Files\packages\python\swig\yap4py\;CMake Files\packages\python\yap_kernel\;CMake Files\packages\myddas\;CMake Files\packages\myddas\sqlite3\;CMake Files\packages\myddas\mysql\;CMake Files\packages\myddas\odbc\;CMake Files\packages\myddas\postgres\;CMake Files\packages\myddas\pl\;CMake Files\packages\raptor\;CMake Files\packages\raptor\cmake\;CMake Files\packages\raptor\doc\;CMake Files\packages\xml\;CMake Files\packages\CLPBN\;CMake Files\packages\CLPBN\horus\;CMake Files\packages\cplint\;CMake Files\packages\cplint\approx\;CMake Files\packages\cplint\approx\simplecuddLPADs\;CMake Files\packages\gecode\;CMake Files\packages\real\;CMake Files\packages\jpl\;CMake Files\packages\jpl\src\;CMake Files\packages\jpl\src\c\;CMake Files\packages\jpl\src\java\;CMake Files\packages\bdd\;CMake Files\packages\bdd\simplecudd\;CMake Files\packages\bdd\simplecudd_lfi\;CMake Files\packages\ProbLog\;CMake Files\packages\swi-minisat2\;CMake Files\packages\swi-minisat2\C\;CMake Files\packages\clpqr\;CMake Files\OPTYap\;CMake Files\utf8proc\;CMake Files\library\;CMake Files\library\dialect\;CMake Files\library\dialect\swi\;CMake Files\library\dialect\swi\fli\;CMake Files\library\clp\;CMake Files\library\matlab\;CMake Files\library\matrix\;CMake Files\library\random\;CMake Files\library\regex\;CMake Files\library\rltree\;CMake Files\library\system\;CMake Files\library\tries\;CMake Files\library\ytest\;CMake Files\library\lammpi\;CMake Files\CXX\;CMake Files\H\;CMake Files\pl\;CMake Files\swi\;CMake Files\swi\library\;CMake Files\docs\;CMake Files\docs\source\;"/> <Option virtualFolders="CMake Files\;CMake Files\cmake\;CMake Files\.git\;CMake Files\.git\refs\;CMake Files\.git\refs\heads\;CMake Files\os\;CMake Files\packages\;CMake Files\packages\python\;CMake Files\packages\python\swig\;CMake Files\packages\python\swig\yap4py\;CMake Files\packages\python\yap_kernel\;CMake Files\packages\myddas\;CMake Files\packages\myddas\sqlite3\;CMake Files\packages\myddas\mysql\;CMake Files\packages\myddas\odbc\;CMake Files\packages\myddas\postgres\;CMake Files\packages\myddas\pl\;CMake Files\packages\raptor\;CMake Files\packages\raptor\cmake\;CMake Files\packages\raptor\doc\;CMake Files\packages\xml\;CMake Files\packages\CLPBN\;CMake Files\packages\CLPBN\horus\;CMake Files\packages\cplint\;CMake Files\packages\gecode\;CMake Files\packages\real\;CMake Files\packages\jpl\;CMake Files\packages\bdd\;CMake Files\packages\ProbLog\;CMake Files\packages\swi-minisat2\;CMake Files\packages\swi-minisat2\C\;CMake Files\packages\clpqr\;CMake Files\OPTYap\;CMake Files\utf8proc\;CMake Files\library\;CMake Files\library\dialect\;CMake Files\library\dialect\swi\;CMake Files\library\dialect\swi\fli\;CMake Files\library\clp\;CMake Files\library\matlab\;CMake Files\library\matrix\;CMake Files\library\random\;CMake Files\library\regex\;CMake Files\library\rltree\;CMake Files\library\system\;CMake Files\library\tries\;CMake Files\library\ytest\;CMake Files\library\lammpi\;CMake Files\CXX\;CMake Files\H\;CMake Files\pl\;CMake Files\swi\;CMake Files\swi\library\;CMake Files\docs\;CMake Files\docs\source\;"/>
<Build> <Build>
<Target title="all"> <Target title="all">
<Option working_dir="/home/vsc/github/yap-6.3/packages/bdd"/> <Option working_dir="/home/vsc/github/yap-6.3/packages/bdd"/>
@ -17,326 +17,7 @@
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/Makefile&quot; VERBOSE=1 clean"/> <DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands> </MakeCommands>
</Target> </Target>
<Target title="cudd">
<Option output="/home/vsc/github/yap-6.3/packages/bdd/libcudd.so" prefix_auto="0" extension_auto="0"/>
<Option working_dir="/home/vsc/github/yap-6.3/packages/bdd"/>
<Option object_output="./"/>
<Option type="3"/>
<Option compiler="clang"/>
<Compiler>
<Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/>
<Add option="-DRATIONAL_TREES=1"/>
<Add option="-D_YAP_NOT_INSTALLED_=1"/>
<Add option="-DHAVE_CONFIG_H=1"/>
<Add option="-D_GNU_SOURCE"/>
<Add option="-DDEBUG=1"/>
<Add option="-DTHREADED_CODE=1"/>
<Add option="-DLOW_LEVEL_TRACER=1"/>
<Add option="-DUTF8PROC=1"/>
<Add option="-DUSE_MYDDAS=1"/>
<Add option="-DMYDDAS_SQLITE3=1"/>
<Add option="-DTABLING=1"/>
<Add directory="/home/vsc/github/yap-6.3"/>
<Add directory="/usr/include/x86_64-linux-gnu"/>
<Add directory="/home/vsc/github/yap-6.3/utf8proc"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas/sqlite3/src"/>
<Add directory="/home/vsc/github/yap-6.3/H"/>
<Add directory="/home/vsc/github/yap-6.3/H/generated"/>
<Add directory="/home/vsc/github/yap-6.3/include"/>
<Add directory="/home/vsc/github/yap-6.3/os"/>
<Add directory="/home/vsc/github/yap-6.3/OPTYap"/>
<Add directory="/home/vsc/github/yap-6.3/JIT/HPP"/>
<Add directory="/usr/local/include"/>
<Add directory="/home/vsc/github/yap-6.3/packages/bdd"/>
</Compiler>
<MakeCommands>
<Build command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/Makefile&quot; VERBOSE=1 cudd"/>
<CompileFile command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/Makefile&quot; VERBOSE=1 &quot;$file&quot;"/>
<Clean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/Makefile&quot; VERBOSE=1 clean"/>
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands>
</Target>
<Target title="cudd/fast">
<Option output="/home/vsc/github/yap-6.3/packages/bdd/libcudd.so" prefix_auto="0" extension_auto="0"/>
<Option working_dir="/home/vsc/github/yap-6.3/packages/bdd"/>
<Option object_output="./"/>
<Option type="3"/>
<Option compiler="clang"/>
<Compiler>
<Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/>
<Add option="-DRATIONAL_TREES=1"/>
<Add option="-D_YAP_NOT_INSTALLED_=1"/>
<Add option="-DHAVE_CONFIG_H=1"/>
<Add option="-D_GNU_SOURCE"/>
<Add option="-DDEBUG=1"/>
<Add option="-DTHREADED_CODE=1"/>
<Add option="-DLOW_LEVEL_TRACER=1"/>
<Add option="-DUTF8PROC=1"/>
<Add option="-DUSE_MYDDAS=1"/>
<Add option="-DMYDDAS_SQLITE3=1"/>
<Add option="-DTABLING=1"/>
<Add directory="/home/vsc/github/yap-6.3"/>
<Add directory="/usr/include/x86_64-linux-gnu"/>
<Add directory="/home/vsc/github/yap-6.3/utf8proc"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas/sqlite3/src"/>
<Add directory="/home/vsc/github/yap-6.3/H"/>
<Add directory="/home/vsc/github/yap-6.3/H/generated"/>
<Add directory="/home/vsc/github/yap-6.3/include"/>
<Add directory="/home/vsc/github/yap-6.3/os"/>
<Add directory="/home/vsc/github/yap-6.3/OPTYap"/>
<Add directory="/home/vsc/github/yap-6.3/JIT/HPP"/>
<Add directory="/usr/local/include"/>
<Add directory="/home/vsc/github/yap-6.3/packages/bdd"/>
</Compiler>
<MakeCommands>
<Build command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/Makefile&quot; VERBOSE=1 cudd/fast"/>
<CompileFile command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/Makefile&quot; VERBOSE=1 &quot;$file&quot;"/>
<Clean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/Makefile&quot; VERBOSE=1 clean"/>
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands>
</Target>
<Target title="Problogbdd">
<Option output="/home/vsc/github/yap-6.3/packages/bdd/simplecudd/simplecudd" prefix_auto="0" extension_auto="0"/>
<Option working_dir="/home/vsc/github/yap-6.3/packages/bdd/simplecudd"/>
<Option object_output="./"/>
<Option type="1"/>
<Option compiler="clang"/>
<Compiler>
<Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/>
<Add option="-DRATIONAL_TREES=1"/>
<Add option="-D_YAP_NOT_INSTALLED_=1"/>
<Add option="-DHAVE_CONFIG_H=1"/>
<Add option="-D_GNU_SOURCE"/>
<Add option="-DDEBUG=1"/>
<Add option="-DTHREADED_CODE=1"/>
<Add option="-DLOW_LEVEL_TRACER=1"/>
<Add option="-DUTF8PROC=1"/>
<Add option="-DUSE_MYDDAS=1"/>
<Add option="-DMYDDAS_SQLITE3=1"/>
<Add option="-DTABLING=1"/>
<Add directory="/home/vsc/github/yap-6.3"/>
<Add directory="/usr/include/x86_64-linux-gnu"/>
<Add directory="/home/vsc/github/yap-6.3/utf8proc"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas/sqlite3/src"/>
<Add directory="/home/vsc/github/yap-6.3/H"/>
<Add directory="/home/vsc/github/yap-6.3/H/generated"/>
<Add directory="/home/vsc/github/yap-6.3/include"/>
<Add directory="/home/vsc/github/yap-6.3/os"/>
<Add directory="/home/vsc/github/yap-6.3/OPTYap"/>
<Add directory="/home/vsc/github/yap-6.3/JIT/HPP"/>
<Add directory="/usr/local/include"/>
<Add directory="/home/vsc/github/yap-6.3/packages/bdd"/>
<Add directory="/home/vsc/github/yap-6.3/packages/bdd/simplecudd"/>
</Compiler>
<MakeCommands>
<Build command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd/Makefile&quot; VERBOSE=1 Problogbdd"/>
<CompileFile command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd/Makefile&quot; VERBOSE=1 &quot;$file&quot;"/>
<Clean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd/Makefile&quot; VERBOSE=1 clean"/>
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands>
</Target>
<Target title="Problogbdd/fast">
<Option output="/home/vsc/github/yap-6.3/packages/bdd/simplecudd/simplecudd" prefix_auto="0" extension_auto="0"/>
<Option working_dir="/home/vsc/github/yap-6.3/packages/bdd/simplecudd"/>
<Option object_output="./"/>
<Option type="1"/>
<Option compiler="clang"/>
<Compiler>
<Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/>
<Add option="-DRATIONAL_TREES=1"/>
<Add option="-D_YAP_NOT_INSTALLED_=1"/>
<Add option="-DHAVE_CONFIG_H=1"/>
<Add option="-D_GNU_SOURCE"/>
<Add option="-DDEBUG=1"/>
<Add option="-DTHREADED_CODE=1"/>
<Add option="-DLOW_LEVEL_TRACER=1"/>
<Add option="-DUTF8PROC=1"/>
<Add option="-DUSE_MYDDAS=1"/>
<Add option="-DMYDDAS_SQLITE3=1"/>
<Add option="-DTABLING=1"/>
<Add directory="/home/vsc/github/yap-6.3"/>
<Add directory="/usr/include/x86_64-linux-gnu"/>
<Add directory="/home/vsc/github/yap-6.3/utf8proc"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas/sqlite3/src"/>
<Add directory="/home/vsc/github/yap-6.3/H"/>
<Add directory="/home/vsc/github/yap-6.3/H/generated"/>
<Add directory="/home/vsc/github/yap-6.3/include"/>
<Add directory="/home/vsc/github/yap-6.3/os"/>
<Add directory="/home/vsc/github/yap-6.3/OPTYap"/>
<Add directory="/home/vsc/github/yap-6.3/JIT/HPP"/>
<Add directory="/usr/local/include"/>
<Add directory="/home/vsc/github/yap-6.3/packages/bdd"/>
<Add directory="/home/vsc/github/yap-6.3/packages/bdd/simplecudd"/>
</Compiler>
<MakeCommands>
<Build command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd/Makefile&quot; VERBOSE=1 Problogbdd/fast"/>
<CompileFile command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd/Makefile&quot; VERBOSE=1 &quot;$file&quot;"/>
<Clean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd/Makefile&quot; VERBOSE=1 clean"/>
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands>
</Target>
<Target title="Problogbdd-Lfi">
<Option output="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/simplecudd_lfi" prefix_auto="0" extension_auto="0"/>
<Option working_dir="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi"/>
<Option object_output="./"/>
<Option type="1"/>
<Option compiler="clang"/>
<Compiler>
<Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/>
<Add option="-DRATIONAL_TREES=1"/>
<Add option="-D_YAP_NOT_INSTALLED_=1"/>
<Add option="-DHAVE_CONFIG_H=1"/>
<Add option="-D_GNU_SOURCE"/>
<Add option="-DDEBUG=1"/>
<Add option="-DTHREADED_CODE=1"/>
<Add option="-DLOW_LEVEL_TRACER=1"/>
<Add option="-DUTF8PROC=1"/>
<Add option="-DUSE_MYDDAS=1"/>
<Add option="-DMYDDAS_SQLITE3=1"/>
<Add option="-DTABLING=1"/>
<Add directory="/home/vsc/github/yap-6.3"/>
<Add directory="/usr/include/x86_64-linux-gnu"/>
<Add directory="/home/vsc/github/yap-6.3/utf8proc"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas/sqlite3/src"/>
<Add directory="/home/vsc/github/yap-6.3/H"/>
<Add directory="/home/vsc/github/yap-6.3/H/generated"/>
<Add directory="/home/vsc/github/yap-6.3/include"/>
<Add directory="/home/vsc/github/yap-6.3/os"/>
<Add directory="/home/vsc/github/yap-6.3/OPTYap"/>
<Add directory="/home/vsc/github/yap-6.3/JIT/HPP"/>
<Add directory="/usr/local/include"/>
<Add directory="/home/vsc/github/yap-6.3/packages/bdd"/>
<Add directory="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi"/>
</Compiler>
<MakeCommands>
<Build command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/Makefile&quot; VERBOSE=1 Problogbdd-Lfi"/>
<CompileFile command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/Makefile&quot; VERBOSE=1 &quot;$file&quot;"/>
<Clean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/Makefile&quot; VERBOSE=1 clean"/>
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands>
</Target>
<Target title="Problogbdd-Lfi/fast">
<Option output="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/simplecudd_lfi" prefix_auto="0" extension_auto="0"/>
<Option working_dir="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi"/>
<Option object_output="./"/>
<Option type="1"/>
<Option compiler="clang"/>
<Compiler>
<Add option="-DDEPTH_LIMIT=1"/>
<Add option="-DCOROUTINING=1"/>
<Add option="-DRATIONAL_TREES=1"/>
<Add option="-D_YAP_NOT_INSTALLED_=1"/>
<Add option="-DHAVE_CONFIG_H=1"/>
<Add option="-D_GNU_SOURCE"/>
<Add option="-DDEBUG=1"/>
<Add option="-DTHREADED_CODE=1"/>
<Add option="-DLOW_LEVEL_TRACER=1"/>
<Add option="-DUTF8PROC=1"/>
<Add option="-DUSE_MYDDAS=1"/>
<Add option="-DMYDDAS_SQLITE3=1"/>
<Add option="-DTABLING=1"/>
<Add directory="/home/vsc/github/yap-6.3"/>
<Add directory="/usr/include/x86_64-linux-gnu"/>
<Add directory="/home/vsc/github/yap-6.3/utf8proc"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas"/>
<Add directory="/home/vsc/github/yap-6.3/packages/myddas/sqlite3/src"/>
<Add directory="/home/vsc/github/yap-6.3/H"/>
<Add directory="/home/vsc/github/yap-6.3/H/generated"/>
<Add directory="/home/vsc/github/yap-6.3/include"/>
<Add directory="/home/vsc/github/yap-6.3/os"/>
<Add directory="/home/vsc/github/yap-6.3/OPTYap"/>
<Add directory="/home/vsc/github/yap-6.3/JIT/HPP"/>
<Add directory="/usr/local/include"/>
<Add directory="/home/vsc/github/yap-6.3/packages/bdd"/>
<Add directory="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi"/>
</Compiler>
<MakeCommands>
<Build command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/Makefile&quot; VERBOSE=1 Problogbdd-Lfi/fast"/>
<CompileFile command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/Makefile&quot; VERBOSE=1 &quot;$file&quot;"/>
<Clean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/Makefile&quot; VERBOSE=1 clean"/>
<DistClean command="/usr/bin/make -f &quot;/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/Makefile&quot; VERBOSE=1 clean"/>
</MakeCommands>
</Target>
</Build> </Build>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/cudd.c">
<Option target="cudd"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd/general.c">
<Option target="Problogbdd"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd/general.h">
<Option target="Problogbdd"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd/problogbdd.c">
<Option target="Problogbdd"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd/problogmath.c">
<Option target="Problogbdd"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd/problogmath.h">
<Option target="Problogbdd"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd/simplecudd.c">
<Option target="Problogbdd"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd/simplecudd.h">
<Option target="Problogbdd"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/adterror.c">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/adterror.h">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/allocate.c">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/allocate.h">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/general.c">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/general.h">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/iqueue.c">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/iqueue.h">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/pqueue.c">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/pqueue.h">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/problogbdd_lfi.c">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/problogmath.c">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/problogmath.h">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/simplecudd.c">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/simplecudd.h">
<Option target="Problogbdd-Lfi"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/CMakeLists.txt">
<Option virtualFolder="CMake Files\"/> <Option virtualFolder="CMake Files\"/>
</Unit> </Unit>
@ -415,9 +96,6 @@
<Unit filename="/home/vsc/github/yap-6.3/cmake/cudd.cmake"> <Unit filename="/home/vsc/github/yap-6.3/cmake/cudd.cmake">
<Option virtualFolder="CMake Files\cmake\"/> <Option virtualFolder="CMake Files\cmake\"/>
</Unit> </Unit>
<Unit filename="/home/vsc/github/yap-6.3/cmake/cudd_config.h.cmake">
<Option virtualFolder="CMake Files\cmake\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/cmake/disallow.cmake"> <Unit filename="/home/vsc/github/yap-6.3/cmake/disallow.cmake">
<Option virtualFolder="CMake Files\cmake\"/> <Option virtualFolder="CMake Files\cmake\"/>
</Unit> </Unit>
@ -481,6 +159,9 @@
<Unit filename="/home/vsc/github/yap-6.3/packages/raptor/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/raptor/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\raptor\"/> <Option virtualFolder="CMake Files\packages\raptor\"/>
</Unit> </Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/raptor/raptor_config.h.cmake">
<Option virtualFolder="CMake Files\packages\raptor\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/raptor/cmake/FindRAPTOR.cmake"> <Unit filename="/home/vsc/github/yap-6.3/packages/raptor/cmake/FindRAPTOR.cmake">
<Option virtualFolder="CMake Files\packages\raptor\cmake\"/> <Option virtualFolder="CMake Files\packages\raptor\cmake\"/>
</Unit> </Unit>
@ -499,9 +180,6 @@
<Unit filename="/home/vsc/github/yap-6.3/packages/cplint/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/cplint/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\cplint\"/> <Option virtualFolder="CMake Files\packages\cplint\"/>
</Unit> </Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/cplint/approx/simplecuddLPADs/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\cplint\approx\simplecuddLPADs\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/gecode/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/gecode/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\gecode\"/> <Option virtualFolder="CMake Files\packages\gecode\"/>
</Unit> </Unit>
@ -514,21 +192,9 @@
<Unit filename="/home/vsc/github/yap-6.3/packages/jpl/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/jpl/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\jpl\"/> <Option virtualFolder="CMake Files\packages\jpl\"/>
</Unit> </Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/jpl/src/c/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\jpl\src\c\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/jpl/src/java/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\jpl\src\java\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/bdd/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\bdd\"/> <Option virtualFolder="CMake Files\packages\bdd\"/>
</Unit> </Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\bdd\simplecudd\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/bdd/simplecudd_lfi/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\bdd\simplecudd_lfi\"/>
</Unit>
<Unit filename="/home/vsc/github/yap-6.3/packages/ProbLog/CMakeLists.txt"> <Unit filename="/home/vsc/github/yap-6.3/packages/ProbLog/CMakeLists.txt">
<Option virtualFolder="CMake Files\packages\ProbLog\"/> <Option virtualFolder="CMake Files\packages\ProbLog\"/>
</Unit> </Unit>

View File

@ -200,7 +200,7 @@
int getRealNumber(char *c, double *number); int getRealNumber(char *c, double *number);
int getIntNumber(char *c, int *number); int getIntNumber(char *c, int *number);
inline int getPosNumber(char *c, int *number); //inline int getPosNumber(char *c, int *number);
int IsRealNumber(char *c); int IsRealNumber(char *c);
int IsPosNumber(const char *c); int IsPosNumber(const char *c);
int IsNumber(const char *c); int IsNumber(const char *c);

View File

@ -188,12 +188,13 @@
//#include <stdio.h> //#include <stdio.h>
//#include <stdlib.h> //#include <stdlib.h>
#include <unistd.h>
#include "simplecudd.h" #include "simplecudd.h"
#include "problogmath.h" #include "problogmath.h"
#include <signal.h> #include <signal.h>
#include <time.h> #include <time.h>
#define VERSION "2.0.1" #define PROBLOGBDD_VERSION "2.0.1"
#ifndef max #ifndef max
@ -1550,7 +1551,7 @@ int argtype(const char *arg) {
} }
void printhelp(int argc, char **arg) { void printhelp(int argc, char **arg) {
fprintf(stderr, "\n\nProbLogBDD Tool Version: %s\n\n", VERSION); fprintf(stderr, "\n\nProbLogBDD Tool Version: %s\n\n", PROBLOGBDD_VERSION);
fprintf(stderr, "SimpleCUDD library (www.cs.kuleuven.be/~theo/tools/simplecudd.html)\n"); fprintf(stderr, "SimpleCUDD library (www.cs.kuleuven.be/~theo/tools/simplecudd.html)\n");
fprintf(stderr, "SimpleCUDD was developed at Katholieke Universiteit Leuven(www.kuleuven.be)\n"); fprintf(stderr, "SimpleCUDD was developed at Katholieke Universiteit Leuven(www.kuleuven.be)\n");
fprintf(stderr, "Copyright Katholieke Universiteit Leuven 2008\n"); fprintf(stderr, "Copyright Katholieke Universiteit Leuven 2008\n");

View File

@ -400,7 +400,7 @@ int simpleNamedBDDtoDot(DdManager *manager, namedvars varmap, DdNode *bdd,
// Cudd_AutodynEnable(mana, CUDD_REORDER_EXACT); // Cudd_AutodynEnable(mana, CUDD_REORDER_EXACT);
// Cudd_ReduceHeap(manager, CUDD_REORDER_SIFT, 1); // Cudd_ReduceHeap(manager, CUDD_REORDER_SIFT, 1);
ret = Cudd_DumpDot(manager, 1, f, varmap.vars, NULL, fd); ret = Cudd_DumpDot(manager, 1, f, (const char *const *)varmap.vars, NULL, fd);
fclose(fd); fclose(fd);
return ret; return ret;
} }

View File

@ -1,12 +1,15 @@
## The MYDDAS Data-base interface {#myddas} @defgroup myddas The MYDDAS Data-base interface
@ingroup packages
The MYDDAS database project was developed within a FCT project aiming at The MYDDAS database project was developed within a FCT project
the development of a highly efficient deductive database system, based aiming at the development of a highly efficient deductive database
on the coupling of the MySQL relational database system with the YAP system, based on the coupling of the MySQL relational database
Prolog system. MYDDAS was later expanded to support the ODBC interface. system with the YAP Prolog system. MYDDAS was later expanded to
support the ODBC interface, postgres and sqlite3.
### Requirements and Installation Guide {#Requirements_and_Installation_Guide} @defgroup Requirements_and_Installation_Guide Requirements and Installation Guide
@ingroup myddas @{
Next, we describe how to usen of the YAP with the MYDDAS System. The Next, we describe how to usen of the YAP with the MYDDAS System. The
use of this system is entirely depend of the MySQL development libraries use of this system is entirely depend of the MySQL development libraries
@ -38,7 +41,9 @@
two different ways. As if we were on the MySQL Client Shell, and as if two different ways. As if we were on the MySQL Client Shell, and as if
we were using Datalog. we were using Datalog.
### MYDDAS Architecture {#MYDDAS_Architecture} @}
@defgroup MYDDAS_Architecture MYDDAS Architecture
@ingroup myddas @{
The system includes four main blocks that are put together through the The system includes four main blocks that are put together through the
MYDDAS interface: the Yap Prolog compiler, the MySQL database system, an MYDDAS interface: the Yap Prolog compiler, the MySQL database system, an
@ -88,8 +93,9 @@
WHERE A.Name = 'John Doe'; WHERE A.Name = 'John Doe';
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### View Level Interface {#View_Level_Interface} @}
@defgroup View_Level_Interface View Level Interface
@ingroup myddas @{
@pred db view(+,+,+). @pred db view(+,+,+).
@pred db view(+,+). @pred db view(+,+).
@ -179,7 +185,7 @@
To know how to use db `view/3`, please refer to Draxler's Prolog to To know how to use db `view/3`, please refer to Draxler's Prolog to
SQL Compiler Manual. SQL Compiler Manual.
### Accessing Tables in Data Sources Using SQL {#Accessing_Tables_in_Data_Sources_Using_SQL} @defgroup Accessing_Tables_in_Data_Sources_Using_SQL Accessing Tables in Data Sources Using SQL
@pred db_sql(+,+,?). @pred db_sql(+,+,?).
@ -203,9 +209,9 @@
?- db_sql('SELECT * FROM phonebook',LA). ?- db_sql('SELECT * FROM phonebook',LA).
LA = ['D','John Doe',123456789] ? LA = ['D','John Doe',123456789] ?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@}
### Insertion of Rows {#Insertion_of_Rows} @defgroup Insertion_of_Rows Insertion of Rows
@ingroup myddas @{
@pred db_assert(+,+). @pred db_assert(+,+).
@pred db_assert(+). @pred db_assert(+).
@ -274,7 +280,7 @@
yes yes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### Types of Attributes {#Types_of_Attributes} @defgroup Types_of_Attributes Types of Attributes
@pred db_get_attributes_types(+,+,?). @pred db_get_attributes_types(+,+,?).
@ -298,7 +304,7 @@ otype for this predicate is the following:
where <tt>Hello World</tt> is the name of the relation and <tt>myddas</tt> is the where <tt>Hello World</tt> is the name of the relation and <tt>myddas</tt> is the
connection identifier. connection identifier.
### Number of Fields {#Number_of_Fields} @defgroup Number_of_Fields Number of Fields
@pred db_number_of_fields(+,?). @pred db_number_of_fields(+,?).
@ -325,7 +331,7 @@ otype for this predicate is the following:
where `Hello World` is the name of the where `Hello World` is the name of the
relation and `myddas` is the connection identifier. relation and `myddas` is the connection identifier.
### Describing a Relation {#Describing_a_Relation} @defgroup Describing_a_Relation Describing a Relation
@pred db_datalog_describe(+,+). @pred db_datalog_describe(+,+).
@pred db_datalog_describe(+). @pred db_datalog_describe(+).
@ -366,10 +372,10 @@ otype for this predicate is the following:
Term = tableInfo('Letter',char(1),'YES','',null(2),'') ? ; Term = tableInfo('Letter',char(1),'YES','',null(2),'') ? ;
no no
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### Enumeration Relations Describing_a_Relation Describing a Relation {#Enumerating_Relations} @defgroup Enumerating_Relations Enumeration Relations Describing_a_Relation Describing a Relation
/@pred db_datalog_show_tables(+). @pred db_datalog_show_tables(+).
@pred db_datalog_show_tables @pred db_datalog_show_tables
@ -406,7 +412,8 @@ otype for this predicate is the following:
no no
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
### The MYDDAS MySQL Top Level {#The_MYDDAS_MySQL_Top_Level} @}
@defgroup The_MYDDAS_MySQL_Top_Level The MYDDAS MySQL Top Level @ingroup myddas @{
@pred db_top_level(+,+,+,+,+). @pred db_top_level(+,+,+,+,+).
@pred db_top_level(+,+,+,+). @pred db_top_level(+,+,+,+).
@ -456,9 +463,9 @@ otype for this predicate is the following:
yes yes
?- ?-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@}
### Other MYDDAS Properties {#Other_MYDDAS_Properties} @defgroup Other_MYDDAS_Properties Other MYDDAS Properties
@ingroup myddas @{
@pred db_verbose(+). @pred db_verbose(+).
@ -553,4 +560,7 @@ otype for this predicate is the following:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You can see the available SQL Modes at the MySQL homepage at You can see the available SQL Modes at the MySQL homepage at
<http://www.mysql.org>. <http://www.mysql.org>.
@]
@}

View File

@ -265,7 +265,7 @@ PyObject *term_to_python(term_t t, bool eval, PyObject *o, bool cvt) {
#if PY_MAJOR_VERSION < 3 #if PY_MAJOR_VERSION < 3
if (PyLong_Check(ip)) { if (PyLong_Check(ip)) {
min = PyLong_AsLong(ip); min = PyLong_AsLong(ip);
} else if (PyInt_Check(ip) { } else if (PyInt_Check(ip)) {
min = PyInt_asInt(ip); min = PyInt_asInt(ip);
} }
#else #else

View File

@ -1,6 +1,7 @@
/** /**
* *
* @section Python Built-Ins * @defgroup Py4YAP-Bips Python Built-Ins
* @ingroup Py4YAP
* *
* The Python engine includes a large number of Python built-ins. Some * The Python engine includes a large number of Python built-ins. Some
* of them are interfaced here. * of them are interfaced here.
@ -1078,3 +1079,5 @@ PyObject *compound_to_pyeval(term_t t, PyObject *context, bool cvt) {
return rc; return rc;
} }
} }
// @}

View File

@ -11,6 +11,7 @@
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% file python.pl
%%% %%%
:- module(python, :- module(python,
@ -43,18 +44,19 @@
]). ]).
/** <module> python /** @defgroup Py4YAP A C-based Prolog interface to python.
@ingroup python
A C-based Prolog interface to python. @{
@author Vitor Santos Costa @author Vitor Santos Costa
@version 0:0:5, 2012/10/8 @version 0:0:5, 2012/10/8
@license Perl Artistic License @license Perl Artistic License
This is an interface to allow calling Python from Prolog. Please look This is an interface to allow calling Python from Prolog. Please look
at the SWIG package if you want to embedd Prolog with Python. at the YAP4PY SWIG package if you want to embedd Prolog with Python.
The interface should be activated by consulting the python lybrary. It The interface should be activated by consulting the python library. It
immediately boots a Python image. immediately boots a Python image.
To best define the interface, one has to address two opposite goals: To best define the interface, one has to address two opposite goals:
@ -170,3 +172,5 @@ add_cwd_to_python :-
% done % done
:- initialization( load_foreign_files(['YAPPython'], [], init_python_dll), now ). :- initialization( load_foreign_files(['YAPPython'], [], init_python_dll), now ).
%% @}

View File

@ -1,4 +1,4 @@
# Doxyfile 1.8.11 # Doxyfile 1.8.14
# This file describes the settings to be used by the documentation system # This file describes the settings to be used by the documentation system
# doxygen (www.doxygen.org) for a project. # doxygen (www.doxygen.org) for a project.
@ -8,9 +8,9 @@
# #
# All text after a single hash (#) is considered a comment and will be ignored. # All text after a single hash (#) is considered a comment and will be ignored.
# The format is: # The format is:
# TAG = value [value, file.] # TAG = value [value, ...]
# For lists, items can also be appended using: # For lists, items can also be appended using:
# TAG += value [value, file.] # TAG += value [value, ...]
# Values that contain spaces should be placed between quotes (\" \"). # Values that contain spaces should be placed between quotes (\" \").
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
@ -68,7 +68,7 @@ OUTPUT_DIRECTORY = /home/vsc/github/yap-6.3/docs
# performance problems for the file system. # performance problems for the file system.
# The default value is: NO. # The default value is: NO.
CREATE_SUBDIRS = YES CREATE_SUBDIRS = NO
# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII # If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
# characters to appear in the names of generated files. If set to NO, non-ASCII # characters to appear in the names of generated files. If set to NO, non-ASCII
@ -98,7 +98,7 @@ OUTPUT_LANGUAGE = English
# documentation (similar to Javadoc). Set to NO to disable this. # documentation (similar to Javadoc). Set to NO to disable this.
# The default value is: YES. # The default value is: YES.
BRIEF_MEMBER_DESC = YES BRIEF_MEMBER_DESC = YES
# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief # If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
# description of a member or function before the detailed description # description of a member or function before the detailed description
@ -204,7 +204,7 @@ MULTILINE_CPP_IS_BRIEF = NO
# documentation from any documented member that it re-implements. # documentation from any documented member that it re-implements.
# The default value is: YES. # The default value is: YES.
INHERIT_DOCS = YES INHERIT_DOCS = NO
# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new # If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
# page for each member. If set to NO, the documentation of a member will be part # page for each member. If set to NO, the documentation of a member will be part
@ -229,10 +229,15 @@ TAB_SIZE = 4
# "Side Effects:". You can put \n's in the value part of an alias to insert # "Side Effects:". You can put \n's in the value part of an alias to insert
# newlines. # newlines.
ALIASES = "predicate=@brief" "license=@par License:\n" \ ALIASES = "predicate=@brief" \
"doxygen=\if english" "endenglish=\endif" "dutch=\if dutch" \ "license=@par License:\n" \
"enddutch=\endif" "tbd=@par TBD:\n" "compat=@par Compatibility:\n" \ "doxygen=\if english" \
"error=@par Error:\n" "endenglish=\endif" \
"dutch=\if dutch" \
"enddutch=\endif" \
"tbd=@par TBD:\n" \
"compat=@par Compatibility:\n" \
"error=@par Error:\n"
# This tag can be used to specify a number of word-keyword mappings (TCL only). # This tag can be used to specify a number of word-keyword mappings (TCL only).
# A mapping has the form "name=value". For example adding "class=itcl::class" # A mapping has the form "name=value". For example adding "class=itcl::class"
@ -246,7 +251,7 @@ TCL_SUBST =
# members will be omitted, etc. # members will be omitted, etc.
# The default value is: NO. # The default value is: NO.
OPTIMIZE_OUTPUT_FOR_C = NO OPTIMIZE_OUTPUT_FOR_C = YES
# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
# Python sources only. Doxygen will then generate output that is more tailored # Python sources only. Doxygen will then generate output that is more tailored
@ -291,7 +296,10 @@ OPTIMIZE_OUTPUT_FOR_PROLOG = YES
# Note that for custom extensions you also need to set FILE_PATTERNS otherwise # Note that for custom extensions you also need to set FILE_PATTERNS otherwise
# the files are not read by doxygen. # the files are not read by doxygen.
EXTENSION_MAPPING = md pl=Prolog yap=Prolog ypp=Prolog EXTENSION_MAPPING = md \
pl=Prolog \
yap=Prolog \
ypp=Prolog
# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments # If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
# according to the Markdown format, which allows for more readable # according to the Markdown format, which allows for more readable
@ -303,6 +311,15 @@ EXTENSION_MAPPING = md pl=Prolog yap=Prolog ypp=Prolog
MARKDOWN_SUPPORT = YES MARKDOWN_SUPPORT = YES
# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up
# to that level are automatically included in the table of contents, even if
# they do not have an id attribute.
# Note: This feature currently applies only to Markdown headings.
# Minimum value: 0, maximum value: 99, default value: 0.
# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
TOC_INCLUDE_HEADINGS = 99
# When enabled doxygen tries to link words that correspond to documented # When enabled doxygen tries to link words that correspond to documented
# classes, or namespaces to their corresponding documentation. Such a link can # classes, or namespaces to their corresponding documentation. Such a link can
# be prevented in individual cases by putting a % sign in front of the word or # be prevented in individual cases by putting a % sign in front of the word or
@ -407,7 +424,7 @@ TYPEDEF_HIDES_STRUCT = NO
# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small # code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
# doxygen will become slower. If the cache is too large, memory is wasted. The # doxygen will become slower. If the cache is too large, memory is wasted. The
# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range # cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
# is 0file9, the default is 0, corresponding to a cache size of 2^16=65536 # is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
# symbols. At the end of a run doxygen will report the cache usage and suggest # symbols. At the end of a run doxygen will report the cache usage and suggest
# the optimal cache size from a speed point of view. # the optimal cache size from a speed point of view.
# Minimum value: 0, maximum value: 9, default value: 0. # Minimum value: 0, maximum value: 9, default value: 0.
@ -636,8 +653,8 @@ GENERATE_BUGLIST = YES
GENERATE_DEPRECATEDLIST= YES GENERATE_DEPRECATEDLIST= YES
# The ENABLED_SECTIONS tag can be used to enable conditional documentation # The ENABLED_SECTIONS tag can be used to enable conditional documentation
# sections, marked by \if <section_label> file. \endif and \cond <section_label> # sections, marked by \if <section_label> ... \endif and \cond <section_label>
# file. \endcond blocks. # ... \endcond blocks.
ENABLED_SECTIONS = ENABLED_SECTIONS =
@ -694,7 +711,7 @@ FILE_VERSION_FILTER =
# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE # DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
# tag is left empty. # tag is left empty.
LAYOUT_FILE = LAYOUT_FILE = /home/vsc/github/yap-6.3/docs/custom/DoxygenLayout.xml
# The CITE_BIB_FILES tag can be used to specify one or more bib files containing # The CITE_BIB_FILES tag can be used to specify one or more bib files containing
# the reference definitions. This must be a list of .bib files. The .bib # the reference definitions. This must be a list of .bib files. The .bib
@ -728,10 +745,10 @@ WARNINGS = YES
# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate # If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag # warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
# will automatically be disabled. # will automatically be disabled.
# The default value is: YES. # The default value is: YES.
WARN_IF_UNDOCUMENTED = YES WARN_IF_UNDOCUMENTED = NO
# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for # If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
# potential errors in the documentation, such as not documenting some parameters # potential errors in the documentation, such as not documenting some parameters
@ -749,6 +766,12 @@ WARN_IF_DOC_ERROR = YES
WARN_NO_PARAMDOC = NO WARN_NO_PARAMDOC = NO
# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when
# a warning is encountered.
# The default value is: NO.
WARN_AS_ERROR = NO
# The WARN_FORMAT tag determines the format of the warning messages that doxygen # The WARN_FORMAT tag determines the format of the warning messages that doxygen
# can produce. The string should contain the $file, $line, and $text tags, which # can produce. The string should contain the $file, $line, and $text tags, which
# will be replaced by the file and line number from which the warning originated # will be replaced by the file and line number from which the warning originated
@ -775,8 +798,7 @@ WARN_LOGFILE =
# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
# Note: If this tag is empty the current directory is searched. # Note: If this tag is empty the current directory is searched.
INPUT = /home/vsc/github/yap-6.3/packages/raptor INPUT = /home/vsc/github/yap-6.3/packages/raptor
# This tag can be used to specify the character encoding of the source files # This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
@ -798,10 +820,56 @@ INPUT_ENCODING = UTF-8
# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp, # If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, # *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, # *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc,
# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, # *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.pyw, *.f90, *.f95, *.f03, *.f08,
# *.vhdl, *.ucf, *.qsf, *.as and *.js. # *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf, *.qsf, *.as, *.js, *.yap, *.ypp,
# *.prolog and *.pl.
FILE_PATTERNS = *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.idl *.ddl *.odl *.h *.h.in *.hh *.hxx *.hpp *.h++ *.cs *.d *.php *.php4 *.php5 *.phtml *.inc *.m *.markdown *.md *.mm *.dox *.py *.f90 *.f *.for *.tcl *.vhd *.vhdl *.ucf *.qsf *.as *.js *.pl *.yap *.ypp FILE_PATTERNS = *.c \
*.cc \
*.cxx \
*.cpp \
*.c++ \
*.java \
*.ii \
*.ixx \
*.ipp \
*.i++ \
*.inl \
*.idl \
*.ddl \
*.odl \
*.h \
*.h.in \
*.hh \
*.hxx \
*.hpp \
*.h++ \
*.cs \
*.d \
*.php \
*.php4 \
*.php5 \
*.phtml \
*.inc \
*.m \
*.markdown \
*.md \
*.mm \
*.dox \
*.py \
*.f90 \
*.f \
*.for \
*.tcl \
*.vhd \
*.vhdl \
*.ucf \
*.qsf \
*.as \
*.js \
*.pl \
*.yap \
*.ypp
# The RECURSIVE tag can be used to specify whether or not subdirectories should # The RECURSIVE tag can be used to specify whether or not subdirectories should
# be searched for input files as well. # be searched for input files as well.
@ -816,7 +884,7 @@ RECURSIVE = YES
# Note that relative paths are relative to the directory from which doxygen is # Note that relative paths are relative to the directory from which doxygen is
# run. # run.
EXCLUDE = /home/vsc/github/yap-6.3/build /home/vsc/github/yap-6.3/Debug /home/vsc/github/yap-6.3/packages/jpl /home/vsc/github/yap-6.3/packages/swig /home/vsc/github/yap-6.3/packages/myddas/sqlite3/src /home/vsc/github/yap-6.3/packages/gecode/4.4.0 /home/vsc/github/yap-6.3/packages/gecode/4.2.1 /home/vsc/github/yap-6.3/packages/gecode/4.2.0 /home/vsc/github/yap-6.3/packages/gecode/4.0.0 /home/vsc/github/yap-6.3/packages/gecode/3.7.3 /home/vsc/github/yap-6.3/packages/gecode/3.7.2 /home/vsc/github/yap-6.3/packages/gecode/3.7.1 /home/vsc/github/yap-6.3/packages/gecode/3.7.0 /home/vsc/github/yap-6.3/packages/gecode/3.6.0 /home/vsc/github/yap-6.3/packages/gecode/dev /home/vsc/github/yap-6.3/C/traced_absmi_insts.h /home/vsc/github/yap-6.3/H/globals.h /home/vsc/github/yap-6.3/packages/cplint /home/vsc/github/yap-6.3/packages/CLPBN/examples /home/vsc/github/yap-6.3/packages/CLPBN/horus /home/vsc/github/yap-6.3/packages/prosqlite /home/vsc/github/yap-6.3/packages/pyswip /home/vsc/github/yap-6.3/packages/yap-lbfgs/liblbfgs-1.10 /home/vsc/github/yap-6.3/library/dialect/swi/os /home/vsc/github/yap-6.3/packages/gecode/gecode3_yap.cc /home/vsc/github/yap-6.3/packages/gecode/gecode4_yap.cc /home/vsc/github/yap-6.3/packages/gecode/gecode3.yap /home/vsc/github/yap-6.3/packages/gecode/gecode4.yap /home/vsc/github/yap-6.3/packages/gecode/gecode3_yap_hand_written.yap /home/vsc/github/yap-6.3/packages/gecode/gecode4_yap_hand_written.yap */CMakeFiles/* *~ */ EXCLUDE = /home/vsc/github/yap-6.3/build /home/vsc/github/yap-6.3/Debug /home/vsc/github/yap-6.3/packages/jpl /home/vsc/github/yap-6.3/packages/swig /home/vsc/github/yap-6.3/packages/Problog/problog_examples/output /home/vsc/github/yap-6.3/packages/Problog/problog_examples/queries /home/vsc/github/yap-6.3/packages/myddas/sqlite3/src /home/vsc/github/yap-6.3/packages/gecode/4.4.0 /home/vsc/github/yap-6.3/packages/gecode/4.2.1 /home/vsc/github/yap-6.3/packages/gecode/4.2.0 /home/vsc/github/yap-6.3/packages/gecode/4.0.0 /home/vsc/github/yap-6.3/packages/gecode/3.7.3 /home/vsc/github/yap-6.3/packages/gecode/3.7.2 /home/vsc/github/yap-6.3/packages/gecode/3.7.1 /home/vsc/github/yap-6.3/packages/gecode/3.7.0 /home/vsc/github/yap-6.3/packages/gecode/3.6.0 /home/vsc/github/yap-6.3/packages/gecode/dev /home/vsc/github/yap-6.3/C/traced_absmi_insts.h /home/vsc/github/yap-6.3/H/globals.h /home/vsc/github/yap-6.3/packages/cplint /home/vsc/github/yap-6.3/packages/CLPBN/examples /home/vsc/github/yap-6.3/packages/CLPBN/horus /home/vsc/github/yap-6.3/packages/prosqlite /home/vsc/github/yap-6.3/packages/pyswip /home/vsc/github/yap-6.3/packages/yap-lbfgs/liblbfgs-1.10 /home/vsc/github/yap-6.3/library/dialect/swi/os /home/vsc/github/yap-6.3/packages/python /home/vsc/github/yap-6.3/*/bprolog/* /home/vsc/github/yap-6.3/*/prism/* /home/vsc/github/yap-6.3/*/gecodde/[345]* /home/vsc/github/yap-6.3/packages/gecode/gecode3_yap.cc /home/vsc/github/yap-6.3/packages/gecode/gecode4_yap.cc /home/vsc/github/yap-6.3/packages/gecode/gecode5_yap.cc /home/vsc/github/yap-6.3/packages/gecode/gecode3.yap /home/vsc/github/yap-6.3/packages/gecode/gecode4.yap /home/vsc/github/yap-6.3/packages/gecode/gecode5.yap /home/vsc/github/yap-6.3/packages/gecode/gecode3_yap_hand_written.yap /home/vsc/github/yap-6.3/packages/gecode/gecode4_yap_hand_written.yap /home/vsc/github/yap-6.3/packages/gecode/gecode5_yap_hand_written.yap */CMakeFiles/* *~ */
# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or # The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
# directories that are symbolic links (a Unix file system feature) are excluded # directories that are symbolic links (a Unix file system feature) are excluded
@ -831,14 +899,8 @@ EXCLUDE_SYMLINKS = NO
# #
# Note that the wildcards are matched against the file with absolute path, so to # Note that the wildcards are matched against the file with absolute path, so to
# exclude all test directories for example use the pattern */test/* # exclude all test directories for example use the pattern */test/*
EXCLUDE_PATTERNS = \ EXCLUDE_PATTERNS = /home/vsc/github/yap-6.3/build /home/vsc/github/yap-6.3/Debug /home/vsc/github/yap-6.3/packages/jpl /home/vsc/github/yap-6.3/packages/swig /home/vsc/github/yap-6.3/packages/Problog/problog_examples/output /home/vsc/github/yap-6.3/packages/Problog/problog_examples/queries /home/vsc/github/yap-6.3/packages/myddas/sqlite3/src /home/vsc/github/yap-6.3/packages/gecode/4.4.0 /home/vsc/github/yap-6.3/packages/gecode/4.2.1 /home/vsc/github/yap-6.3/packages/gecode/4.2.0 /home/vsc/github/yap-6.3/packages/gecode/4.0.0 /home/vsc/github/yap-6.3/packages/gecode/3.7.3 /home/vsc/github/yap-6.3/packages/gecode/3.7.2 /home/vsc/github/yap-6.3/packages/gecode/3.7.1 /home/vsc/github/yap-6.3/packages/gecode/3.7.0 /home/vsc/github/yap-6.3/packages/gecode/3.6.0 /home/vsc/github/yap-6.3/packages/gecode/dev /home/vsc/github/yap-6.3/C/traced_absmi_insts.h /home/vsc/github/yap-6.3/H/globals.h /home/vsc/github/yap-6.3/packages/cplint /home/vsc/github/yap-6.3/packages/CLPBN/examples /home/vsc/github/yap-6.3/packages/CLPBN/horus /home/vsc/github/yap-6.3/packages/prosqlite /home/vsc/github/yap-6.3/packages/pyswip /home/vsc/github/yap-6.3/packages/yap-lbfgs/liblbfgs-1.10 /home/vsc/github/yap-6.3/library/dialect/swi/os /home/vsc/github/yap-6.3/packages/python /home/vsc/github/yap-6.3/*/bprolog/* /home/vsc/github/yap-6.3/*/prism/* /home/vsc/github/yap-6.3/*/gecodde/[345]* /home/vsc/github/yap-6.3/packages/gecode/gecode3_yap.cc /home/vsc/github/yap-6.3/packages/gecode/gecode4_yap.cc /home/vsc/github/yap-6.3/packages/gecode/gecode5_yap.cc /home/vsc/github/yap-6.3/packages/gecode/gecode3.yap /home/vsc/github/yap-6.3/packages/gecode/gecode4.yap /home/vsc/github/yap-6.3/packages/gecode/gecode5.yap /home/vsc/github/yap-6.3/packages/gecode/gecode3_yap_hand_written.yap /home/vsc/github/yap-6.3/packages/gecode/gecode4_yap_hand_written.yap /home/vsc/github/yap-6.3/packages/gecode/gecode5_yap_hand_written.yap */CMakeFiles/* *~ */
/home/vsc/github/yap-6.3/packages/gecode/gecode3_yap.cc \
/home/vsc/github/yap-6.3/packages/gecode/gecode4_yap.cc \
/home/vsc/github/yap-6.3/packages/gecode/gecode3.yap \
/home/vsc/github/yap-6.3/packages/gecode/gecode4.yap \
/home/vsc/github/yap-6.3/packages/gecode/gecode3_yap_hand_written.yap \ /home/vsc/github/yap-6.3/packages/gecode/gecode4_yap_hand_written.yap
*/CMakeFiles/* *~ */\#* \
# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names # The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
# (namespaces, classes, functions, etc.) that should be excluded from the # (namespaces, classes, functions, etc.) that should be excluded from the
@ -1028,7 +1090,7 @@ VERBATIM_HEADERS = YES
# classes, structs, unions or interfaces. # classes, structs, unions or interfaces.
# The default value is: YES. # The default value is: YES.
ALPHABETICAL_INDEX = YES ALPHABETICAL_INDEX = NO
# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in # The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
# which the alphabetical index list will be split. # which the alphabetical index list will be split.
@ -1087,7 +1149,7 @@ HTML_FILE_EXTENSION = .html
# of the possible markers and block names see the documentation. # of the possible markers and block names see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES. # This tag requires that the tag GENERATE_HTML is set to YES.
HTML_HEADER = /home/vsc/github/yap-6.3/docs/custom/header.html HTML_HEADER = /home/vsc/github/yap-6.3/docs/custom/header.html
# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each # The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
# generated HTML page. If the tag is left blank doxygen will generate a standard # generated HTML page. If the tag is left blank doxygen will generate a standard
@ -1099,6 +1161,7 @@ HTML_HEADER = /home/vsc/github/yap-6.3/docs/custom/header.html
HTML_FOOTER = /home/vsc/github/yap-6.3/docs/custom/footer.html HTML_FOOTER = /home/vsc/github/yap-6.3/docs/custom/footer.html
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style # The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
# sheet that is used by each HTML page. It can be used to fine-tune the look of # sheet that is used by each HTML page. It can be used to fine-tune the look of
# the HTML output. If left blank doxygen will generate a default style sheet. # the HTML output. If left blank doxygen will generate a default style sheet.
@ -1122,9 +1185,8 @@ HTML_STYLESHEET =
# list). For an example see the documentation. # list). For an example see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES. # This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_STYLESHEET = \ HTML_EXTRA_STYLESHEET = /home/vsc/github/yap-6.3/docs/custom/customdoxygen.css
/home/vsc/github/yap-6.3/docs/custom/customdoxygen.css \
/home/vsc/github/yap-6.3/docs/custom/solarized-light.css \
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or # The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the HTML output directory. Note # other source files which should be copied to the HTML output directory. Note
@ -1134,7 +1196,7 @@ HTML_EXTRA_STYLESHEET = \
# files will be copied as-is; there are no commands or markers available. # files will be copied as-is; there are no commands or markers available.
# This tag requires that the tag GENERATE_HTML is set to YES. # This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_FILES = /home/vsc/github/yap-6.3/docs/custom/application.js /home/vsc/github/yap-6.3/docs/custom/assets /home/vsc/github/yap-6.3/docs/custom/bootstrap.min.css /home/vsc/github/yap-6.3/docs/custom/bootstrap.min.js /home/vsc/github/yap-6.3/docs/custom/customdoxygen.css /home/vsc/github/yap-6.3/docs/custom/default /home/vsc/github/yap-6.3/docs/custom/doxy-boot.js /home/vsc/github/yap-6.3/docs/custom/font-awesome.min.css /home/vsc/github/yap-6.3/docs/custom/footer.html /home/vsc/github/yap-6.3/docs/custom/header.html /home/vsc/github/yap-6.3/docs/custom/jquery-3.2.1.min.js /home/vsc/github/yap-6.3/docs/custom/offcanvas.css /home/vsc/github/yap-6.3/docs/custom/offcanvas.js /home/vsc/github/yap-6.3/docs/custom/solarized-light.css /home/vsc/github/yap-6.3/docs/custom/theme.css /home/vsc/github/yap-6.3/docs/custom/yap.css HTML_EXTRA_FILES = /home/vsc/github/yap-6.3/docs/custom/doxy-boot.js
# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen # The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
# will adjust the colors in the style sheet and background images according to # will adjust the colors in the style sheet and background images according to
@ -1175,13 +1237,24 @@ HTML_COLORSTYLE_GAMMA = 80
HTML_TIMESTAMP = NO HTML_TIMESTAMP = NO
# If the HTML_DYNAMIC_MENUS tag is set to YES then the generated HTML
# documentation will contain a main index with vertical navigation menus that
# are dynamically created via Javascript. If disabled, the navigation index will
# consists of multiple levels of tabs that are statically embedded in every HTML
# page. Disable this option to support browsers that do not have Javascript,
# like the Qt help browser.
# The default value is: YES.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_DYNAMIC_MENUS = YES
# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
# documentation will contain sections that can be hidden and shown after the # documentation will contain sections that can be hidden and shown after the
# page has loaded. # page has loaded.
# The default value is: NO. # The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES. # This tag requires that the tag GENERATE_HTML is set to YES.
HTML_DYNAMIC_SECTIONS = NO HTML_DYNAMIC_SECTIONS = YES
# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries # With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
# shown in the various tree structured indices initially; the user can expand # shown in the various tree structured indices initially; the user can expand
@ -1481,7 +1554,7 @@ MATHJAX_FORMAT = HTML-CSS
# output directory using the MATHJAX_RELPATH option. The destination directory # output directory using the MATHJAX_RELPATH option. The destination directory
# should contain the MathJax.js script. For instance, if the mathjax directory # should contain the MathJax.js script. For instance, if the mathjax directory
# is located at the same level as the HTML output directory, then # is located at the same level as the HTML output directory, then
# MATHJAX_RELPATH should be file/mathjax. The default value points to the MathJax # MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
# Content Delivery Network so you can quickly see the result without installing # Content Delivery Network so you can quickly see the result without installing
# MathJax. However, it is strongly recommended to install a local copy of # MathJax. However, it is strongly recommended to install a local copy of
# MathJax from http://www.mathjax.org before deployment. # MathJax from http://www.mathjax.org before deployment.
@ -1536,7 +1609,7 @@ SEARCHENGINE = YES
# The default value is: NO. # The default value is: NO.
# This tag requires that the tag SEARCHENGINE is set to YES. # This tag requires that the tag SEARCHENGINE is set to YES.
SERVER_BASED_SEARCH = YES SERVER_BASED_SEARCH = NO
# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP # When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
# script for searching. Instead the search results are written to an XML file # script for searching. Instead the search results are written to an XML file
@ -1598,7 +1671,7 @@ EXTRA_SEARCH_MAPPINGS =
# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output. # If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
# The default value is: YES. # The default value is: YES.
GENERATE_LATEX = YES GENERATE_LATEX = NO
# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of # relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
@ -1868,7 +1941,7 @@ MAN_SUBDIR =
# The default value is: NO. # The default value is: NO.
# This tag requires that the tag GENERATE_MAN is set to YES. # This tag requires that the tag GENERATE_MAN is set to YES.
MAN_LINKS = NOoi9 0 MAN_LINKS = NO
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Configuration options related to the XML output # Configuration options related to the XML output
@ -1895,7 +1968,7 @@ XML_OUTPUT = xml
# The default value is: YES. # The default value is: YES.
# This tag requires that the tag GENERATE_XML is set to YES. # This tag requires that the tag GENERATE_XML is set to YES.
XML_PROGRAMLISTING = YES XML_PROGRAMLISTING = NO
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Configuration options related to the DOCBOOK output # Configuration options related to the DOCBOOK output
@ -1991,7 +2064,7 @@ ENABLE_PREPROCESSING = YES
# The default value is: NO. # The default value is: NO.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
MACRO_EXPANSION = NO MACRO_EXPANSION = YES
# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then
# the macro expansion is limited to the macros specified with the PREDEFINED and # the macro expansion is limited to the macros specified with the PREDEFINED and
@ -1999,14 +2072,14 @@ MACRO_EXPANSION = NO
# The default value is: NO. # The default value is: NO.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
EXPAND_ONLY_PREDEF = NO EXPAND_ONLY_PREDEF = YES
# If the SEARCH_INCLUDES tag is set to YES, the include files in the # If the SEARCH_INCLUDES tag is set to YES, the include files in the
# INCLUDE_PATH will be searched if a #include is found. # INCLUDE_PATH will be searched if a #include is found.
# The default value is: YES. # The default value is: YES.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
SEARCH_INCLUDES = YES SEARCH_INCLUDES = NO
# The INCLUDE_PATH tag can be used to specify one or more directories that # The INCLUDE_PATH tag can be used to specify one or more directories that
# contain include files that are not input files but should be processed by the # contain include files that are not input files but should be processed by the
@ -2014,11 +2087,11 @@ SEARCH_INCLUDES = YES
# This tag requires that the tag SEARCH_INCLUDES is set to YES. # This tag requires that the tag SEARCH_INCLUDES is set to YES.
INCLUDE_PATH = /home/vsc/github/yap-6.3 \ INCLUDE_PATH = /home/vsc/github/yap-6.3 \
/home/vsc/github/yap-6.3/H \ /home/vsc/github/yap-6.3/H \
/home/vsc/github/yap-6.3/H/generated \ /home/vsc/github/yap-6.3/H/generated \
/home/vsc/github/yap-6.3/include \ /home/vsc/github/yap-6.3/include \
/home/vsc/github/yap-6.3/os \ /home/vsc/github/yap-6.3/os \
/home/vsc/github/yap-6.3/OPTYap \ /home/vsc/github/yap-6.3/OPTYap
# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
# patterns (like *.h and *.hpp) to filter out the header-files in the # patterns (like *.h and *.hpp) to filter out the header-files in the
@ -2036,7 +2109,20 @@ INCLUDE_FILE_PATTERNS =
# recursively expanded use the := operator instead of the = operator. # recursively expanded use the := operator instead of the = operator.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
PREDEFINED = PREDEFINED =
YAP_FLAG(ITEM,NAME,WRITABLE,DEF,INIT,HELPER)=ITEM \
START_LOCAL_FLAGS="enum THREAD_LOCAL_FLAGS {" \
END_LOCAL_FLAGS=" };"\
START_GLOBAL_FLAGS="enum GLOBAL_FLAGS {" \
END_GLOBAL_FLAGS="};" \
LOCAL(A, B)="A B" \
LOCAL_INIT(A, B, C)="A B;B = C" \
LOCAL_ARRAY(A, B, C)="A B[C]" \
LOCAL_ARRAY_ARRAY(A, B, C,D)="A B[C][D]"\
LOCAL_INIT(A, B, C, D)="A B[C][D]"\
LOCAL_INITF(A, B, C)=" A B; C"\
LOCAL_INIT_RESTORE(A,B,C,D)="A B; C; D;"\
PREG=Yap_REGS.P_
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
# tag can be used to specify a list of macro names that should be expanded. The # tag can be used to specify a list of macro names that should be expanded. The
@ -2045,7 +2131,7 @@ PREDEFINED =
# definition found in the source code. # definition found in the source code.
# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
EXPAND_AS_DEFINED = EXPAND_AS_DEFINED =
# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will # If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
# remove all references to function-like macros that are alone on a line, have # remove all references to function-like macros that are alone on a line, have
@ -2066,7 +2152,7 @@ SKIP_FUNCTION_MACROS = YES
# a tag file without this location is as follows: # a tag file without this location is as follows:
# TAGFILES = file1 file2 ... # TAGFILES = file1 file2 ...
# Adding location for the tag files is done as follows: # Adding location for the tag files is done as follows:
# TAGFILES = file1=loc1 "file2 = loc2" file. # TAGFILES = file1=loc1 "file2 = loc2" ...
# where loc1 and loc2 can be relative or absolute paths or URLs. See the # where loc1 and loc2 can be relative or absolute paths or URLs. See the
# section "Linking to external documentation" for more information about the use # section "Linking to external documentation" for more information about the use
# of tag files. # of tag files.
@ -2358,6 +2444,11 @@ DIAFILE_DIRS =
PLANTUML_JAR_PATH = PLANTUML_JAR_PATH =
# When using plantuml, the PLANTUML_CFG_FILE tag can be used to specify a
# configuration file for plantuml.
PLANTUML_CFG_FILE =
# When using plantuml, the specified paths are searched for files specified by # When using plantuml, the specified paths are searched for files specified by
# the !include statement in a plantuml block. # the !include statement in a plantuml block.

View File

@ -26,12 +26,212 @@
# 2. Within an installed instance of R # 2. Within an installed instance of R
# 3. Within external system libraries # 3. Within external system libraries
# #
set_package_properties(R PROPERTIES
DESCRIPTION "The R Project for Statistical Computing."
URL "https://www.r-project.org/")
macro_optional_find_package (R ON) find_program (
R_COMMAND
NAMES R r
)
if (R_LIBRARIES AND R_INCLUDE_DIR) if (R_COMMAND)
# find the R binary
set (REAL_SOURCES MESSAGE(STATUS "Looking for R executable")
IF(NOT R_EXECUTABLE)
FIND_PROGRAM(R_EXECUTABLE R)
IF(R_EXECUTABLE-NOTFOUND)
MESSAGE(FATAL_ERROR "Could NOT find R (TODO: name option)")
ELSE(R_EXECUTABLE-NOTFOUND)
MESSAGE(STATUS "Using R at ${R_EXECUTABLE}")
ENDIF(R_EXECUTABLE-NOTFOUND)
ENDIF(NOT R_EXECUTABLE)
# find R_HOME
MESSAGE(STATUS "Looking for R_HOME")
IF(NOT R_HOME)
EXECUTE_PROCESS(
COMMAND ${R_EXECUTABLE} "--slave" "--no-save" "-e" "cat(R.home())"
OUTPUT_VARIABLE R_HOME)
ENDIF(NOT R_HOME)
IF(NOT R_HOME)
MESSAGE(FATAL_ERROR "Could NOT determine R_HOME (probably you misspecified the location of R)")
ELSE(NOT R_HOME)
MESSAGE(STATUS "R_HOME is ${R_HOME}")
ENDIF(NOT R_HOME)
# find R include dir
MESSAGE(STATUS "Looking for R include files")
IF(NOT R_INCLUDEDIR)
IF(WIN32 OR APPLE) # This version of the test will not work with R < 2.9.0, but the other version (in the else part) will not work on windows or apple (but we do not really need to support ancient versions of R, there).
EXECUTE_PROCESS(
COMMAND ${R_EXECUTABLE} "--slave" "--no-save" "-e" "cat(R.home('include'))"
OUTPUT_VARIABLE R_INCLUDEDIR)
ELSE(WIN32 OR APPLE)
EXECUTE_PROCESS(
COMMAND ${R_EXECUTABLE} CMD sh -c "echo -n $R_INCLUDE_DIR"
OUTPUT_VARIABLE R_INCLUDEDIR)
ENDIF(WIN32 OR APPLE)
ELSE(NOT R_INCLUDEDIR)
MESSAGE(STATUS "Location specified by user")
ENDIF(NOT R_INCLUDEDIR)
IF(NOT R_INCLUDEDIR)
SET(R_INCLUDEDIR ${R_HOME}/include)
MESSAGE(STATUS "Not findable via R. Guessing")
ENDIF(NOT R_INCLUDEDIR)
MESSAGE(STATUS "Include files should be at ${R_INCLUDEDIR}. Checking for R.h")
IF(NOT R_H)
FIND_FILE(R_H
R.h
PATHS ${R_INCLUDEDIR}
NO_DEFAULT_PATH)
ENDIF(NOT R_H)
IF(NOT R_H)
MESSAGE(FATAL_ERROR "Not found")
ELSE(NOT R_H)
MESSAGE(STATUS "Found at ${R_H}")
GET_FILENAME_COMPONENT(R_INCLUDEDIR ${R_H}
PATH)
ENDIF(NOT R_H)
# check for existence of libR.so
IF(NOT LIBR_SO)
MESSAGE(STATUS "Checking for existence of R shared library")
FIND_LIBRARY(LIBR_SO
R
PATHS ${R_HOME}/lib ${R_SHAREDLIBDIR} ${R_HOME}/bin
NO_DEFAULT_PATH)
endif(NOT LIBR_SO)
IF(NOT LIBR_SO)
MESSAGE(FATAL_ERROR "Not found. Make sure the location of R was detected correctly, above, and R was compiled with the --enable-shlib option")
ELSE(NOT LIBR_SO)
MESSAGE(STATUS "Exists at ${LIBR_SO}")
GET_FILENAME_COMPONENT(R_SHAREDLIBDIR ${LIBR_SO}
PATH)
SET(R_USED_LIBS R)
ENDIF(NOT LIBR_SO)
# for at least some versions of R, we seem to have to link against -lRlapack. Else loading some
# R packages will fail due to unresolved symbols, or we can't link against -lR.
# However, we can't do this unconditionally,
# as this is not available in some configurations of R
MESSAGE(STATUS "Checking whether we should link against Rlapack library")
FIND_LIBRARY(LIBR_LAPACK
Rlapack
PATHS ${R_SHAREDLIBDIR}
NO_DEFAULT_PATH)
IF(NOT LIBR_LAPACK)
MESSAGE(STATUS "No, it does not exist in ${R_SHAREDLIBDIR}")
ELSE(NOT LIBR_LAPACK)
MESSAGE(STATUS "Yes, ${LIBR_LAPACK} exists")
SET(R_USED_LIBS ${R_USED_LIBS} Rlapack)
IF(WIN32 OR APPLE)
ELSE(WIN32 OR APPLE)
# needed when linking to Rlapack on linux for some unknown reason.
# apparently not needed on windows (let's see, when it comes back to bite us, though)
# and compiling on windows is hard enough even without requiring libgfortran, too.
SET(R_USED_LIBS ${R_USED_LIBS} gfortran)
ENDIF(WIN32 OR APPLE)
ENDIF(NOT LIBR_LAPACK)
# for at least some versions of R, we seem to have to link against -lRlapack. Else loading some
# R packages will fail due to unresolved symbols, or we can't link against -lR.
# However, we can't do this unconditionally,
# as this is not available in some configurations of R
MESSAGE(STATUS "Checking whether we should link against Rblas library")
FIND_LIBRARY(LIBR_BLAS
Rblas
PATHS ${R_SHAREDLIBDIR}
NO_DEFAULT_PATH)
IF(NOT LIBR_BLAS)
MESSAGE(STATUS "No, it does not exist in ${R_SHAREDLIBDIR}")
ELSE(NOT LIBR_BLAS)
MESSAGE(STATUS "Yes, ${LIBR_BLAS} exists")
SET(R_USED_LIBS ${R_USED_LIBS} Rblas)
ENDIF(NOT LIBR_BLAS)
# find R package library location
IF(WIN32)
SET(PATH_SEP ";")
ELSE(WIN32)
SET(PATH_SEP ":")
ENDIF(WIN32)
MESSAGE(STATUS "Checking for R package library location to use")
IF(NOT R_LIBDIR)
EXECUTE_PROCESS(
COMMAND ${R_EXECUTABLE} "--slave" "--no-save" "-e" "cat(paste(unique (c(.Library.site, .Library)), collapse='${PATH_SEP}'))"
OUTPUT_VARIABLE R_LIBDIR)
ELSE(NOT R_LIBDIR)
MESSAGE(STATUS "Location specified by user")
ENDIF(NOT R_LIBDIR)
# strip whitespace
STRING(REGEX REPLACE "[ \n]+"
"" R_LIBDIR
"${R_LIBDIR}")
# strip leading colon(s)
STRING(REGEX REPLACE "^${PATH_SEP}+"
"" R_LIBDIR
"${R_LIBDIR}")
# strip trailing colon(s)
STRING(REGEX REPLACE "${PATH_SEP}+$"
"" R_LIBDIR
"${R_LIBDIR}")
# find first path
STRING(REGEX REPLACE "${PATH_SEP}"
" " R_LIBDIR
"${R_LIBDIR}")
IF(NOT R_LIBDIR)
MESSAGE(STATUS "Not reliably determined or specified. Guessing.")
SET(R_LIBDIR ${R_HOME}/library)
ENDIF(NOT R_LIBDIR)
SET(R_LIBDIRS ${R_LIBDIR})
SEPARATE_ARGUMENTS(R_LIBDIRS)
SET(R_LIBDIR)
FOREACH(CURRENTDIR ${R_LIBDIRS})
IF(NOT USE_R_LIBDIR)
IF(EXISTS ${CURRENTDIR})
SET(R_LIBDIR ${CURRENTDIR})
SET(USE_R_LIBDIR 1)
ELSE(EXISTS ${CURRENTDIR})
MESSAGE(STATUS "${CURRENTDIR} does not exist. Skipping")
ENDIF(EXISTS ${CURRENTDIR})
ENDIF(NOT USE_R_LIBDIR)
ENDFOREACH(CURRENTDIR ${R_LIBDIRS})
IF(NOT EXISTS ${R_LIBDIR})
MESSAGE(FATAL_ERROR "No existing library location found")
ELSE(NOT EXISTS ${R_LIBDIR})
MESSAGE(STATUS "Will use ${R_LIBDIR}")
ENDIF(NOT EXISTS ${R_LIBDIR})
endif()
#macro_optional_find_package (R ON)
if (R_INCLUDEDIR AND R_LIBDIR)
add_feature_info(R yes "Real")
set (REAL_SOURCES
real.c real.c
) )
@ -43,7 +243,7 @@ add_to_group( REAL_PL pl_library)
include_directories ( include_directories (
${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}
${R_INCLUDE_DIR} ${R_INCLUDEDIR}
) )
list (APPEND CMAKE_REQUIRED_INCLUDES list (APPEND CMAKE_REQUIRED_INCLUDES
@ -53,7 +253,7 @@ include_directories (
add_lib(real ${REAL_SOURCES}) add_lib(real ${REAL_SOURCES})
target_link_libraries (real ${R_LIBRARIES} libYap) target_link_libraries (real ${LIBR_SO} libYap)
check_include_files( "stdio.h;R.h" HAVE_R_H ) check_include_files( "stdio.h;R.h" HAVE_R_H )
check_include_files( "R.h;Rembedded.h" HAVE_R_EMBEDDED_H ) check_include_files( "R.h;Rembedded.h" HAVE_R_EMBEDDED_H )

View File

@ -5,11 +5,11 @@
@version 1:0:4, 2013/12/25, sinter_class @version 1:0:4, 2013/12/25, sinter_class
@license Perl Artistic License @license Perl Artistic License
@defgroup realmd The R Prolog Programming Interface @defgroup real The R Prolog Programming Interface
@ingroup packages @ingroup packages
@{ @{
+ @ref realpl + @tableofcontents
This library enables the communication with an R process started as a shared library. This library enables the communication with an R process started as a shared library.
It is the result of the efforts of two research groups that have worked in parallel. It is the result of the efforts of two research groups that have worked in parallel.
@ -60,7 +60,7 @@ There is a raft of examples packed in a single file that tests the library.
~~~~ ~~~~
@} @}
@defgroup RSyntax Prolog and R Syntax @defgroup RSyntax Prolog and R Syntax
@ingroup realmd @ingroup real
@{ @{
There are syntactic conventions in R that make unparsable prolog code. There are syntactic conventions in R that make unparsable prolog code.
@ -166,7 +166,7 @@ atoms or codes with + as in the above example.
@} @}
@defgroup RealExamples Examples @defgroup RealExamples Examples
@ingroup realmd @ingroup real
@{ @{
~~~~ ~~~~
@ -217,7 +217,7 @@ logical :-
@} @}
@defgroup RealInfo Real Information @defgroup RealInfo Real Information
@ingroup realmd @ingroup real
@{ @{
@ -230,229 +230,9 @@ logical :-
Also @ref yap-real describes the YAP specfic details in real. Also @ref yap-real describes the YAP specfic details in real.
@file real.md @}
'
lllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll@}
@defgroup yap_real Development of real in YAP @defgroup yap_real Development of real in YAP
@ingroup realmd @ingroup real
@{ @{
@ -461,7 +241,7 @@ with the internals of the implementation of R. It includes major
changes and is likely to be much less stable than the version changes and is likely to be much less stable than the version
maintained by Nicos ANgelopoulos. We refer to the version herein as maintained by Nicos ANgelopoulos. We refer to the version herein as
'realC' and describe the main novelties vs the version described 'realC' and describe the main novelties vs the version described
in~\cite{}. Their major differences: in~\cite . Their major differences:
- Most of realC is written in `C`, instead of aa a Prolog string - Most of realC is written in `C`, instead of aa a Prolog string
generator. The `C` code respects the SWI-Prolog fli interface and generator. The `C` code respects the SWI-Prolog fli interface and
@ -497,6 +277,7 @@ in~\cite{}. Their major differences:
?- [examples/for_real]. ?- [examples/for_real].
?- for_real. ?- for_real.
@}
--- ---
- Nicos Angelopoulos and Vitor Santos Costa, December, 2012. - Nicos Angelopoulos and Vitor Santos Costa, December, 2012.
@ -506,4 +287,3 @@ in~\cite{}. Their major differences:
- Updates: Vitor Santos Costa Dec. 2015 - Updates: Vitor Santos Costa Dec. 2015
@} @}
@}

View File

@ -63,8 +63,8 @@ Solver::Solver() :
Solver::~Solver() Solver::~Solver()
{ {
for (int i = 0; i < learnts.size(); i++) free(learnts[i]); for (int i = 0; i < learnts.size(); i++) std::free(learnts[i]);
for (int i = 0; i < clauses.size(); i++) free(clauses[i]); for (int i = 0; i < clauses.size(); i++) std::free(clauses[i]);
} }
@ -163,7 +163,7 @@ void Solver::detachClause(Clause& c) {
void Solver::removeClause(Clause& c) { void Solver::removeClause(Clause& c) {
detachClause(c); detachClause(c);
free(&c); } std::free(&c); }
bool Solver::satisfied(const Clause& c) const { bool Solver::satisfied(const Clause& c) const {

View File

@ -147,7 +147,7 @@ template<class V>
Clause* Clause_new(const V& ps, bool learnt) { Clause* Clause_new(const V& ps, bool learnt) {
assert(sizeof(Lit) == sizeof(uint32_t)); assert(sizeof(Lit) == sizeof(uint32_t));
assert(sizeof(float) == sizeof(uint32_t)); assert(sizeof(float) == sizeof(uint32_t));
void* mem = malloc(sizeof(Clause) + sizeof(uint32_t)*(ps.size())); void* mem = std::malloc(sizeof(Clause) + sizeof(uint32_t)*(ps.size()));
return new (mem) Clause(ps, learnt); } return new (mem) Clause(ps, learnt); }
/*_________________________________________________________________________________________________ /*_________________________________________________________________________________________________
| |

View File

@ -27,7 +27,7 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
//================================================================================================= //=================================================================================================
// Automatically resizable arrays // Automatically resizable arrays
// //
// NOTE! Don't use this vector on datatypes that cannot be re-located in memory (with realloc) // NOTE! Don't use this vector on datatypes that cannot be re-located in memory (with std::realloc)
template<class T> template<class T>
class vec { class vec {
@ -79,9 +79,9 @@ public:
// Stack interface: // Stack interface:
#if 1 #if 1
void push (void) { if (sz == cap) { cap = imax(2, (cap*3+1)>>1); data = (T*)realloc(data, cap * sizeof(T)); } new (&data[sz]) T(); sz++; } void push (void) { if (sz == cap) { cap = imax(2, (cap*3+1)>>1); data = (T*)std::realloc(data, cap * sizeof(T)); } new (&data[sz]) T(); sz++; }
//void push (const T& elem) { if (sz == cap) { cap = imax(2, (cap*3+1)>>1); data = (T*)realloc(data, cap * sizeof(T)); } new (&data[sz]) T(elem); sz++; } //void push (const T& elem) { if (sz == cap) { cap = imax(2, (cap*3+1)>>1); data = (T*)std::realloc(data, cap * sizeof(T)); } new (&data[sz]) T(elem); sz++; }
void push (const T& elem) { if (sz == cap) { cap = imax(2, (cap*3+1)>>1); data = (T*)realloc(data, cap * sizeof(T)); } data[sz++] = elem; } void push (const T& elem) { if (sz == cap) { cap = imax(2, (cap*3+1)>>1); data = (T*)std::realloc(data, cap * sizeof(T)); } data[sz++] = elem; }
void push_ (const T& elem) { assert(sz < cap); data[sz++] = elem; } void push_ (const T& elem) { assert(sz < cap); data[sz++] = elem; }
#else #else
void push (void) { if (sz == cap) grow(sz+1); new (&data[sz]) T() ; sz++; } void push (void) { if (sz == cap) grow(sz+1); new (&data[sz]) T() ; sz++; }
@ -106,7 +106,7 @@ void vec<T>::grow(int min_cap) {
if (min_cap <= cap) return; if (min_cap <= cap) return;
if (cap == 0) cap = (min_cap >= 2) ? min_cap : 2; if (cap == 0) cap = (min_cap >= 2) ? min_cap : 2;
else do cap = (cap*3+1) >> 1; while (cap < min_cap); else do cap = (cap*3+1) >> 1; while (cap < min_cap);
data = (T*)realloc(data, cap * sizeof(T)); } data = (T*)std::realloc(data, cap * sizeof(T)); }
template<class T> template<class T>
void vec<T>::growTo(int size, const T& pad) { void vec<T>::growTo(int size, const T& pad) {
@ -127,7 +127,7 @@ void vec<T>::clear(bool dealloc) {
if (data != NULL){ if (data != NULL){
for (int i = 0; i < sz; i++) data[i].~T(); for (int i = 0; i < sz; i++) data[i].~T();
sz = 0; sz = 0;
if (dealloc) free(data), data = NULL, cap = 0; } } if (dealloc) std::free(data), data = NULL, cap = 0; } }
#endif #endif

View File

@ -21,7 +21,8 @@
@{ @{
@defgroup YAPControl Control Predicates @addtogroup TopLevel Top-Level and Boot Predicates
@ingroup builtins @ingroup builtins
@ -248,6 +249,11 @@ print_message(L,E) :-
:- c_compile('os.yap'). :- c_compile('os.yap').
:- c_compile('errors.yap'). :- c_compile('errors.yap').
%%
% @pred initialize_prolog
%
% User-interface to Prolog bootstrap routine.
%
initialize_prolog :- initialize_prolog :-
'$init_prolog'. '$init_prolog'.
@ -324,16 +330,23 @@ version(yap,[6,3]).
:- dynamic user:portray_message/2. :- dynamic user:portray_message/2.
/** @pred _CurrentModule_:goal_expansion(+ _G_,+ _M_,- _NG_), user:goal_expansion(+ _G_,+ _M_,- _NG_) /** @pred prolog:goal_expansion( :G,+ M,- NG)
@pred user:goalexpansion(+ G,+ M,- NG)
The goal_expansion/3 hook is an user-defined
YAP now supports goal_expansion/3. This is an user-defined
procedure that is called after term expansion when compiling or procedure that is called after term expansion when compiling or
asserting goals for each sub-goal in a clause. The first argument is asserting goals for each sub-goal in a clause. The first argument is
bound to the goal and the second to the module under which the goal bound to the goal and the second to the module under which the goal
_G_ will execute. If goal_expansion/3 succeeds the new _G_ will execute. If goal_expansion/3 succeeds the new
sub-goal _NG_ will replace _G_ and will be processed in the same sub-goal _NG_ will replace _G_ and will be processed in the same
way. If goal_expansion/3 fails the system will use the defaultyap+flrules. way. If goal_expansion/3 fails the system will use the default
expandion mechanism.
This hook is called:
- at compilation time;
- when running a query in the top-level
Older versions of YAP would call this procedure at every meta-call.
*/ */
@ -399,7 +412,8 @@ yap_hacks:cut_by(CP) :- '$$cut_by'(CP).
:- module(user). :- module(user).
/** @pred _CurrentModule_:term_expansion( _T_,- _X_), user:term_expansion( _T_,- _X_) /** @pred term_expansion( _T_,- _X_)
user:term_expansion( _T_,- _X_)
This user-defined predicate is called by `expand_term/3` to This user-defined predicate is called by `expand_term/3` to
@ -467,4 +481,4 @@ If this hook preodicate succeeds it must instantiate the _Action_ argument to t
:- yap_flag(user:unknown,error). :- yap_flag(user:unknown,error).
%% @} %% @}

View File

@ -3,18 +3,20 @@
* @author VITOR SANTOS COSTA <vsc@vcosta-laptop.dcc.fc.up.pt> * @author VITOR SANTOS COSTA <vsc@vcosta-laptop.dcc.fc.up.pt>
* @date Sat Apr 7 03:14:17 2018 * @date Sat Apr 7 03:14:17 2018
* *
* @brief top-level implementation plus system booting.x * @brief top-level implementation plus system booting.
* *
* @defgroup TopLevel Top-Level and Boot Predicates * @addtogroup TopLevel Top-Level and Boot Predicates
* @ingroup YAPControl * @ingroup YAPControl
* * @{
*/ */
:- '$system_meta_predicates'([ :- '$system_meta_predicates'([
catch(0,?,0), catch(0,?,0),
log_event(+,:)]). log_event(+,:)]).
% @pred live
%
% start a Prolog engine.
live :- '$live'. live :- '$live'.
'$live' :- '$live' :-
@ -433,6 +435,13 @@ live :- '$live'.
'$process_answer'(Vs, LBlk, NLAnsw), '$process_answer'(Vs, LBlk, NLAnsw),
'$write_vars_and_goals'(NLAnsw, first, FLAnsw). '$write_vars_and_goals'(NLAnsw, first, FLAnsw).
% @pred write_query_answer( +Bindings )
%
% YAP uses this routine to output the answer to a query.
% _Bindings_ are
% - unifications
% - suspended or floundered goals, representing constraints.
%
write_query_answer( Bindings ) :- write_query_answer( Bindings ) :-
'$write_vars_and_goals'(Bindings, first, _FLAnsw). '$write_vars_and_goals'(Bindings, first, _FLAnsw).
@ -914,7 +923,12 @@ expand_term(Term,Expanded) :-
'$arrays':'$c_arrays'(Expanded0,ExpandedF), !. '$arrays':'$c_arrays'(Expanded0,ExpandedF), !.
'$expand_array_accesses_in_term'(Expanded,Expanded). '$expand_array_accesses_in_term'(Expanded,Expanded).
%% @}
%% @addto group YAPControl
%% @{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% catch/throw implementation % catch/throw implementation
@ -1069,5 +1083,5 @@ log_event( String, Args ) :-
/** /**
@} @} @}
*/ */