Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Which is the best among Visual Prolog, SWI-Prolog, and others? [closed]

Tags:

prolog

I have searched the Internet and stackoverflow.com, but got nothing.

Who can give me a comparison between various Prolog compilers/IDEs such as Visual Prolog and SWI-Prolog?

Thanks in advance!

like image 486
xmllmx Avatar asked Dec 19 '10 11:12

xmllmx


People also ask

Which IDE is best for Prolog?

The most elaborate Prolog IDE I'm familiar with is the Eclipse-based IDE for Amzi! Prolog. This is a commercial product, but the IDE can be downloaded and used for free in the Student Edition. It might be ideal for a beginning Prolog programmer.

Which software platforms can be used for Prolog?

SWI-Prolog runs on Unix, Windows, Macintosh and Linux platforms.

Is Prolog an open source?

Prolog-MPI is an open-source SWI-Prolog extension for distributed computing over the Message Passing Interface. Also there are various concurrent Prolog programming languages.

How do I open SWI-Prolog in terminal?

Open a terminal (Ctrl+Alt+T) and navigate to the directory where you stored your program. Open SWI-Prolog by invoking swipl . In SWI-Prolog, type [program] to load the program, i.e. the file name in brackets, but without the ending. In order to query the loaded program, type goals and watch the output.


2 Answers

It's hard to go wrong if you start with SWI-Prolog. Although it is slower than most of the alternatives discussed here, it is extremely robust, has broad library support, has a decent GUI-building system (XPCE), and uses a license that allows its use in proprietary applications.

For better speed, it is a simple matter to convert most non-GUI SWI-Prolog applications to run under YAP Prolog.

like image 188
JonWD Avatar answered Oct 18 '22 00:10

JonWD


If speed is the most important aspect, you should consider GNU-Prolog. I recently developed using Amzi! Prolog with its Eclipse IDE (not to be confused with ECLiPSe programming language). Once the debugging was done, I turned my attention to timing. Porting to SWI-Prolog and GNU-Prolog was fairly straightforward, both on Windows and Linux, since at that point the code was fairly standard "ISO" Prolog. My timings showed Amzi! and SWI were comparable in speed, and GNU-Prolog was significantly faster.

It also turned out the code was spending a large majority of time in one section that was very numeric. While Amzi! and SWI both implement exact integer arithmetic in arbitrary precision, it turned out my requirements were just within the integer limits in 32-bit GNU-Prolog.

Moreover GNU-Prolog was easy to link to a rewrite of that critical section in C. The hybrid code is what I'm using in production.

like image 33
hardmath Avatar answered Oct 18 '22 00:10

hardmath