{"id":19030209,"url":"https://github.com/typesend/gprolog","last_synced_at":"2026-06-19T08:02:18.286Z","repository":{"id":66496063,"uuid":"261603871","full_name":"typesend/gprolog","owner":"typesend","description":"Mirror of the GNU Prolog sourceforge repository","archived":false,"fork":false,"pushed_at":"2020-05-05T23:18:02.000Z","size":5527,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-06-08T01:12:08.010Z","etag":null,"topics":["c","gprolog","logic-programming","prolog"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/typesend.png","metadata":{"files":{"readme":"README","changelog":"ChangeLog","contributing":null,"funding":null,"license":"COPYING","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-05-05T23:17:29.000Z","updated_at":"2020-05-05T23:19:14.000Z","dependencies_parsed_at":null,"dependency_job_id":"a60d2fd7-78ac-489f-9c86-3ff99e68aafd","html_url":"https://github.com/typesend/gprolog","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/typesend/gprolog","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typesend%2Fgprolog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typesend%2Fgprolog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typesend%2Fgprolog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typesend%2Fgprolog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/typesend","download_url":"https://codeload.github.com/typesend/gprolog/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/typesend%2Fgprolog/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34522042,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-19T02:00:06.005Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","gprolog","logic-programming","prolog"],"created_at":"2024-11-08T21:16:55.856Z","updated_at":"2026-06-19T08:02:18.265Z","avatar_url":"https://github.com/typesend.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"                                GNU PROLOG\n                                ==========\n\n\t\t\t      by Daniel Diaz\n\t\t\t   Daniel.Diaz@univ-paris1.fr\n\n\nINTRODUCTION\n************\n\nGNU Prolog is a native Prolog compiler with constraint solving over finite\ndomains (FD) developed by Daniel Diaz (http://cri-dist.univ-paris1.fr/diaz/)\nLast information can be found at http://www.gnu.org/software/prolog\nor better at http://www.gprolog.org.\n\nA lot of work has been devoted to the ISO compatibility. GNU Prolog is very\nclose to the ISO standard.\n\nHere are some features of GNU Prolog:\n\nProlog system:\n\n   - conforms to the ISO standard for Prolog (integer/floating arithmetic,\n     streams, dynamic code, exceptions).\n   - clause indexing.\n   - a lot of extensions: global variables, definite clause grammars (DCG),\n     sockets interface, operating system interface,...\n   - more than 300 Prolog built-in predicates.\n   - Prolog debugger and a low-level WAM debugger.\n   - line editing facility under the interactive interpreter with completion\n     on atoms.\n   - powerful bidirectional interface between Prolog and C.\n\nCompiler:\n\n   - native-code compiler producing stand alone executables.\n   - simple command-line compiler accepting a wide variety of files:\n     Prolog files, C files, WAM files,...\n   - direct generation of assembly code 15 times faster than wamcc + gcc.\n   - most of unused built-in predicates are not linked (to reduce the size\n     of the executables).\n   - compiled predicates (native-code) as fast as wamcc on average.\n   - consulted predicates (byte-code) 5 times faster than wamcc.\n\nConstraint solver:\n\n   - FD variables well integrated into the Prolog environment (full\n     compatibility with Prolog variables and\n   - integers). No need for explicit FD declarations.\n   - very efficient FD solver (comparable to commercial solvers).\n   - high-level constraints can be described in terms of simple primitives.\n   - a lot of predefined constraints: arithmetic constraints, boolean\n     constraints, symbolic constraints, reified constraints,...\n   - several predefined enumeration heuristics.\n   - the user can define his own new constraints.\n   - more than 50 FD built-in constraints/predicates.\n\n\n\nPORTS\n*****\n\nGNU Prolog is currently ported to the following architectures:\n\n   - ix86 / GNU/Linux\n   - ix86 / Win32 using Cygwin (see file src/WINDOWS)\n   - ix86 / Win32 using MinGW  (see file src/WINDOWS)\n   - ix86 / Win32 using MSVC++ (see file src/WINDOWS)\n   - ix86 / SCO\n   - ix86 / Solaris\n   - ix86 / FreeBSD\n   - ix86 / OpenBSD\n   - ix86 / NetBSD\n   - ix86 / Darwin (Mac OS X)\n   - x86_64 / GNU/Linux\n   - x86_64 / Solaris\n   - x86_64 / Win64 using MinGW64 (see file src/WINDOWS64)\n   - x86_64 / Win64 using MSVC++  (see file src/WINDOWS64)\n   - x86_64 / Darwin (Mac OS X)\n   - PowerPC / GNU/Linux\n   - PowerPC / Darwin (Mac OS X)\n   - PowerPC / NetBSD\n   - sparc / SunOS (4.1.3 or higher)\n   - sparc / Solaris\n   - sparc / NetBSD\n   - sparc64 / OpenBSD\n   - alpha / GNU/Linux\n   - alpha / OSF1\n   - mips / irix\n\n\n\nINSTALLATION\n************\n\nPlease refer to the INSTALL file (in the same directory)\n\n\n\nUSING GNU PROLOG\n****************\n\nBe sure that adequate environment variables are set (see INSTALL)\n\nYou can then invoke the top-level using:\n\n\tgprolog\n\nand the compiler using:\n\n\tgplc FILE\n\nThe simplest way to compile a Prolog file 'prog.pl' is then:\n\n\tgplc prog.pl\n\nwhich will produce the executable called prog (use gplc --help to have a\nbrief overview of available options).\n\nRefer to the documentation for more information (see below).\n\n\n\nWINDOWS\n*******\n\nIn Microsoft Windows if you intend to use the gplc compiler as described in\nthe documentation you need to ascertain the following conditions are\nmet:\n\n   - for the port compiled with MS Visual C++ (tested with version\n     6.0 and Visual C++ 2005 Express Edition) you'll need to have\n     MinGW as.exe (renamed as mingw-as.exe) installed and the cl.exe\n     compiler (used mainly as linker by GNU Prolog) available in \n     your session path (alternatively link.exe is used).\n\n   - for the ports compiled either with MinGW or Cygwin, the gcc\n     toolchain must be installed and available in your session\n     path.\n\nObserving these needs you'll also will be able to do the mixed\nlanguage programming, as the examples included in the ExamplesC\ndirectory. However you'll need to write your own Makefile as the one\nprovided is for gplc calling 'gcc' and the options passed by GNU\nProlog will not work (see file ExamplesC/README).\n\n\n\nDOCUMENTATION\n*************\n\nThe directory doc contains various versions of the manual. Refer to the\nfile doc/README for more information.\n\nAn in-line HTML version can be accessed from the GNU Prolog web page.\n\n\n\nWEB\n***\n\nThe GNU Prolog web site is: http://www.gnu.org/software/prolog/\nor also (primary web site): http://www.gprolog.org/\n\n\n\nMAILING LIST\n************\n\nTo communicate with other GNU Prolog users and/or implementors send a mail to\nusers-prolog@gnu.org. To (un)subscribe to this mailing list send a mail to\nusers-prolog-request@gnu.org with (un)subscribe in the subject line.\n\n\n\nBUGS\n****\n\nPlease report bugs to bug-prolog@gnu.org. To (un)subscribe to this mailing\nlist send a mail to bug-prolog-request@gnu.org with (un)subscribe in the\nsubject line.\n\n\n\nCOPYING\n*******\n\nGNU Prolog is free software. Since version 1.4.0, GNU Prolog distributed\nunder a dual license: LGPL or GPL. So, you can redistribute it and/or modify\nit under the terms of either:\n\n  * the GNU Lesser General Public License (LGPL) as published by the Free\n    Software Foundation; either version 3 of the License, or (at your option)\n    any later version.\n\nor \n\n  * the GNU General Public License (GPL) as published by the Free Software\n    Foundation; either version 2 of the License, or (at your option) any\n    later version.  \n\nor both in parallel (as here).\n\nGNU Prolog is distributed in the hope that it will be useful, but WITHOUT ANY\nWARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR\nA PARTICULAR PURPOSE. See the GNU General Public License for more details.\n\nYou should have received copies of the GNU General Public License and the GNU\nLesser General Public License along with this program. If not, see\nhttp://www.gnu.org/licenses/.\n\nRemark: versions of GNU Prolog prior to 1.4.0 were entirely released under\nthe GNU General Public License (GPL).\n\n\nLocalWords:  wamcc sparc irix gplc prog.pl mingw-as.exe\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftypesend%2Fgprolog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftypesend%2Fgprolog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftypesend%2Fgprolog/lists"}