Library Reference
The reference to the standard Visual Prolog library, the Prolog Foundation Classes, is contained within Visual Prolog itself. This ensures that you will always be viewing the correct documentation for the version of Visual Prolog you are using. PDC have requested that the PFC documentation is not placed on the wiki.
To view the Library Reference for your copy of Visual Prolog, follow the steps below:
From within Visual Prolog
- Create a project and open one of its source files (
.profiles) in the text editor. - Place the text cursor over the name of a PFC library or predicate and press F1.
If pressing F1 opens this Wiki on a page related to getting started or the text editor, then the text cursor was not over the name of a PFC library or predicate when you pressed F1. (Note that the text cursor must be over the name, not the mouse cursor.)
If you are writing a new program or learning Visual Prolog, you can place the cursor on the word core of the open core line at the top of the project template. Once the Library Reference is open you can view the documentation for any class.
Without Visual Prolog
If you wish to browsre the PFC reference without connecting to the Visual Prolog IDE, you can find it by opening the directory where you installed Visual Prolog (usually \Program Files (x86)\Visual Prolog 9 or the appropriate version number) and looking in the subfolder `appData\doc`. Double clicking the file vip.chm will open the Library Reference.
List of Packages
The list of PFC libraries is shown below. These give an overview of the functionality available in PFC and can be used in the editor to open the documentation on each one.
5xVipcontains predicates for compatibility with Visual Prolog v5.actionprovides standard classes for passing event messages between listeners.applicationprovides support for calling external processes or foreign DLLs.asynchronoussupports asynchronous networking via winSock.basisprovides base classes for iterators, cancelable operations and disposable resources.binaryprovides support for raw binary data.booleanprovides support for C-style int-booleans and logical operations.chainDBcontains support for external databases.codePageIdcontains constants representing standard code pages.collectioncontains standard classes for maps, queues, trees and sets.commandLineParsercontains support for parsing command line options.communicationscontains support for pipes and synchronous sockets.consoleprovides console I/O.cryptographyprovides support for encryption and decryption, hashing, and also base64 encoding.dataTypecontains support for disjoint sets.environmentprovides support for manipulating environment variables.eventprovides fully general purpose event message passing with variable numbers of parameters.exceptionholds the basic exception classes.fileSystemcontains file operations.guicontains GUI support.guidprovides support for manipulating Globally Unique IDs (GUIDs)hashprovides incremental hashing.htmlHelpprovides an interface to the Microsoft HTML Help engine, as used to display the Library Reference.InternetExplorercontains classes for interfacing with web browsers.listcontains standard list manipulation predicates.logprovides support for logging to the console, databases, streams, or files.mathcontains standard math operations.memoryallows direct C-style manipulation of system memory.multiThreadprovides support for multithreaded applications.namedValuecontains support for lists of named values.ODBCprovides connections to ODBC databases.piecontains the Prolog Inference Engine.presentercontains support for Presenters.printingprovides support for print jobs.profileprovides support for execution profiling.programControlallows direct control over the program's execution flow.reflectionprovides support for reflection of defined predicates.regExprovides support for regular expression matching.registryprovides support for manipulating the Windows registry.serviceandserviceImplementationprovide support for remotely executed services.shellDDEServerprovides connection with Windows Explorer (the file browser, distinct from Internet Explorer)smapiprovides an interface to Windows' SMAPI interface.stdprovides predicates for looping, likely used together withforeach.streamprovides generic stream support.stringandstring8provide support for Unicode and ASCII strings respectively.syntaxcontains predicates supporting the LALR Parser Generator.systemTrayprovides support for the Windows System Tray.templateExpanderprovides support for defining output templates.testSupportprovides support for automated testing.timecontains date/time handling.timingStatisticsprovides code for timing sections of the program.vpiprovides further GUI support.watchDirectoryallows a file system directory to be watched for changes.webcontains support for XHTML, XML, JSON and MIME, an HTTP client and an interface to CGI.windowsApicontains predicates for directly calling the Windows API.
