
Develop codes combining the very best features of logical, functional and object-oriented programming paradigms in a consistent and elegant way. Build applications for Microsoft Windows 32 and 64 bit platforms. The suite supports advanced client-server and three-tier solutions.
If you ever thought of developing your own application, the Prolog Development Center offers you a comprehensive software program that allows you to fully control the details of your project, such as environment, variables, parameters and other settings.
The program is called Visual Prolog, and it's based on the logic programming language Prolog.
After a smooth installation, you face up quite an outdated interface, one that has no other skin themes than the default one, is composed of an upfront menu, with a mixed toolbar option beneath it and a large display window. I must mention that the toolbar icons seem a bit too overcrowded.
Skipping these small graphical inconveniences, Visual Prologue offers some high features.
One of them is an Integrated Development Environment, that is designed to make program's writing in Prolog easier. It is very useful for large projects and it includes a text editor, a menu editor, a graphics editor and many more facilities.
Moreover, Prolog programming language is fully object-oriented, supports direct linkage with C/C++, parametric polymorphism, and has an automatic memory management.
One last aspect, the Visual Prolog compiler can validate predicate mode, perform powerful type checking and resolve cross-references among declarations.
To summarize, Visual Prolog is a complex program, and though it has a forum for discussions and tutorials, it's addressed to experienced users. Therefore, if have an idea and you know how to build it, Visual Prolog offers you all the needed tools to complete your task.
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