5973cbeb09
Update to version 1.4.5 released in 2020. Make it build and run with Clang 10: - clang has no register reservation for x86, hence patch-EnginePl_machine.h and -DNO_MACHINE_REG_FOR_REG_BANK to prevent using missing feature; - add patch-Ma2Asm_x86__64__any.c fetched from upstream SourceForge post-release commit dealing with PIC issues; - disable usage of spinlocks that results in a hang eating all available CPU cycles; fixed with -DUSE_LOCKS=1 -DUSE_RECURSIVE_LOCKS=1 -DUSE_SPIN_LOCKS=0; - the software uses bundled dlmalloc dated back 2011 that replaces functions like calloc() with own implemenations and it's calloc() sometimes fails to clear allocated memory; this results in SIGSEGV when its own hash-table implementation dereferences junk that supposed to be NULL pointer, so it fails to complete build; fixed with MMAP_CLEARS=0. PR: 231393
20 lines
997 B
Text
20 lines
997 B
Text
GNU Prolog is a free Prolog compiler with constraint solving over finite
|
|
domains developed by Daniel Diaz.
|
|
|
|
GNU Prolog accepts Prolog+constraint programs and produces native binaries
|
|
(like gcc does from a C source). The obtained executable is then stand-alone.
|
|
The size of this executable can be quite small since GNU Prolog can avoid to
|
|
link the code of most unused built-in predicates. The performances of GNU
|
|
Prolog are very encouraging (comparable to commercial systems).
|
|
|
|
Beside the native-code compilation, GNU Prolog offers a classical interactive
|
|
interpreter (top-level) with a debugger.
|
|
|
|
The Prolog part conforms to the ISO standard for Prolog with many extensions
|
|
very useful in practice (global variables, OS interface, sockets,...).
|
|
|
|
GNU Prolog also includes an efficient constraint solver over Finite Domains
|
|
(FD). This opens contraint logic pogramming to the user combining the power
|
|
of constraint programming to the declarativity of logic programming.
|
|
|
|
WWW: http://www.gprolog.org/
|