Visual Prolog versions

Provides programmatic solutions of complex knowledge emphasized problems
May 15, 2021
8.0
Aug 17, 2017
Editorial review
rating
7.5
Dec 17, 2014
Review
7.4
Dec 8, 2012
Review
7.3
May 14, 2010
Review
7.2
Dec 9, 2008
7.1
Mar 7, 2008
Review
7.0
Mar 17, 2008
5.2
Aug 26, 2008
1.0
May 5, 2010

What's new

v8.0 [Aug 17, 2017]
-Build 802 mainly contains bug fixes as listed below.
Language
-DateControl in a 64-bit application
-Problem with generic domain
-List unification problem
-Memory corruption in finalizer

v7.4 [Dec 8, 2012]
The main feature in Visual Prolog 7.4 is the ability to generate 64 bit programs (Commercial Edition only), making it possible to write programs that exploit more of the computers resources.
Program Point
Support for exceptions handling improvement (programPoint type and attribute, implicit programPoint argument). See also programPoint.
Syntax & Warnings
Better handling of comma (,) before then, elseif, else, end if, do and end foreach
Error c550 for inlining a field from a null pointer
Warning c647 if bound/1 is applied to a variable which is always free
Warning if scope is only opened but is not actually used (unused open for class core is ignored). Removing such excessive open-directives makes the Optimal Includes more effective. This warning is switched off by the default (option /w:231 turns it on).
PFC
PFC have been updated to be 64 bit compatible. A few packages have not been updated, but have instead been deprecated and replaced by new packages.
vpiEditor is deprecated
regExp is deprecated
PFC/GUI
sciLexer New editor control based on the Scintilla editor with lexers (including Visual Prolog lexer).
webBrowser New control control comprehensive wrapping of the Internet Explorer WebBrowserControl
Improved clipboard handling (with HTML support)
ribbonControl and command system and controlSerialization; with a run-time visual designer that simplifies the process of making ribbons
toolboxControl control
headerControl control
rebar statusBar packages
shellNotificationIcon for handing notifications in the shells notification area Demo
toolTip package and toolTip functionality on standard controls Demo
splitControl control for multi-split management; with a run-time visual designer that simplifies the process of making splits
splitterControl control for the split in windows
dragNdrop class for (in-program) drag and drop functionality Demo
Object oriented GDI support
Object oriented GDI support for:
bitmap
brush
font
palette
pen
deviceContext
icon
gui_native::createDialogIndirectParam Update for font handling
window::listenUntilDestroy New predicate for listening to an event, but detach the listening when the window is destroyed
messageLoop for SDI applications
PFC (non-GUI)
regEx package based on [www.boost.org/libs/regex boost regular expression library]
mapM_hash & setM_hash New classes for hash table implementations of maps and sets
arrayM uses pointer to memory instead of binary: makes it possible to interpret non-binaries as arrays and is more efficient
arrayM_inline New class for interpretation of C/C struct arrays
arrayM_boolean New class for compact boolean arrays (1 bit per boolean).
array2M New class for 2 dimensional arrays
socket New class for object oriented WinSock2 support
event0 - event7 New classes for general/generic event handling (notify listener)
iStream_stream class for mapping a Visual Prolog stream as an IStream com object (CE-only)
improved ISAPI support
json (pfc/web/json) and jsonRpc New packages for JSON and JSON RPC 2.0 support (CE-only)
memory allocate functions with argument for atomic/non-atomic
ODBC auto parameter binding get the size from the database by means of SQLDescribeParam
shell_api::sHCreateStreamOnFileEx new predicate for creating an IStream com object from a file
xhtmlWriter class for writing xhtml/xhtml5 using an xmlWriter
xmlReader & xmlWriter based on the xmlLite API (CE-only) Demo
internetExplorer class for automating an out-of-process Internet Explorer
IDE
Simplified settings dialog
Add "No To All" button to the dialog for removing file from a project
Create empty clause if there is compiler error for absent clause for a predicate
Global unreachability support
History of Run Arguments
Improved Browse View
Improved the manifest handling
Load browse info in a separate thread (performance optimization)
SDI applications support
Tools entries in project-tree popup menu
Debugger
Soft/hard breakpoints
Add current class facts into the variable window
Show class facts in the Variable Window for a class predicate
Give names to objects
Show gmtTimeValue and localTimeValue as dates and times.
Show the error description for hResult values.
Watch Window improvement
Copying the entire debug tree to the clipboard
Improve memory view for 64bit and break points handling
Others
win32.lib win32.x64.lib updated to Windows Software Development Kit (SDK) for Windows 8
PFC, VPI, IDE: Help button in the title bar
SolutionManager. A utility for better handling of a collection of projects
VipBuilder: Add /platform option for target machine
VPI: Support DDE in SDI application

v7.3 [May 14, 2010]
It fixes several minor bugs.
Compiler:
- Using anonymous predicate for fact initialization (as parameter which, for example, is passed to a constructor) gives unexpected syntax error
- Cut after findall/3 breaks the correct execution at runtime
- Bug in open (when you open a scope you apparently also open the scopes that scope opens)
- Open statement should not affect the search for scope-qualified names
Integrated Development Environment (IDE):
- IDE Vault Integration feature cannot determine correct source control repository when adding new files
- IDE doesn't allow gui resource (dialog/control/form) resizing after clearing readonly attribute
- IDE suggests wrong existing package when creating New In Existick Pack item
- pfc/gui window recieves unexpected timer event
- IDE doesn't select the new control which is just created in the GUI designer
- IDE throws exception when pressing Shift F2 while having in clipboad expression like score::item
- GUI designer property table selects wrong item when clicking after scrolling down
- IDE displays currupted text label in Build tab of Options dialog
Library (PFC):
- PFC: 'Out of range' exception in class 'color'
Runtime Errors:
- Built-in predicate tryToTerm/2-> can give exception for interface types instead of fail
- Built-in predicate tryToTerm/2-> can give exception for interface types instead of fail
Other:
- IDE displays two similar Project Settings dialogs when staying on project file in project tree and pressing Enter
- 'Cancel' button does not work properly when save the contents to a file

v7.1 [Mar 7, 2008]
Bug fixes

Alternative downloads

Simply Fortran
Simply Fortran
rating

A Fortran compiler, advanced development environment, and graphical debugger.

GNU Prolog
GNU Prolog
Free
rating

Free Prolog compiler with constraint solving over finite domains

Visual RPG Studio
Visual RPG Studio
rating

Visual RPG Studio (VRS) can be used to create games without any programming.

Visual Logic Programmer
Visual Logic Programmer
Free
rating

Shows the execution of algorithm on PLC visually and its testing in real time.

Orange C Compiler
Orange C Compiler
Free
rating

It includes an optimizing compiler, a tool chain and an IDE.