Visual Prolog 7.5 New Features
From wiki.visual-prolog.com
Language
- Improved procedure check for number ranges (e.g. [1..3])
- if-then-else expression (in addition to the existing if-then-else statement)
- The condition in an if-then-else now contains an implicit cut, and thus allows non-deterministic condition
- Improved garbage collection: Typed allocation of objects reduces the possibility of false pointers
- Language C/C++ virtual object call compatibility (language thiscall)
- New attribute [inline(size)] for inlining byte sequences in structs
- Additional string literals syntax
- Operator in for member test and iteration
- New hasDomain/2-> function, in addition to the existing hasdomain/1 predicate
- New deterministic orelse operator
- Warning for superfluous static initialization of an object fact if this fact is also initialized in all constructors (the corresponding warning is switched off by the default)
- Warning for unused local domains, functors and constants
PFC
- New packages scannerSupport and cursorScannerSupport for writing scanners in Visual Prolog
- New package service for creating services in Visual Prolog
- New package parser for LALR(1) parsing
- stream::allowNullPointers property for robust writing of illformed data that contains null-pointers
- readLineCRLF/0-> predicate that copy <CR><LF> to resulting string.
- New packages for standalone HTTP/HTTPS server (httpRequest, ...)
- New package json for JSON representation, parsing and writing
- New packages for JSON-RPC service support: standalone HTTP/HTTPS and/or ISAPI integration into Microsoft Internet Informantion Services, IIS (jsonRpc, jsonRpcService, ...)
- New package watchDirectory (pfc\communications) for monitoring directory changes
- New package sciLexerStatusBarfor editor status line
- New packages for XML parsing/writing according to XSD definition (xmlSupport, fromXmlDomSupport and toXmlDomSupport)
- GDI+ support for multi image icons in the icon class (utilized by the ribbonControl).
VIP
Vip is a directory (Commercial Edition only) that provides access to certain internal tools and structures, here among:
- The Visual Prolog parser
- Project file api
- New package for LALR(1) parser generator (Complete LALR(1) parser generartor will follow on WEB)
IDE
- MDI template: new status bar replaces old vpi toolbar
- SDI template: uses ribbon and new status bar
- "Find usages" tool, for finding usages og predicates/properties/facts in clauses
- Copy a project in Welcome/Open Project window
- Error message corrector for missing/invalid scope
- Project file in XML (*.vipprj)
- Project Tree: directories preview
- Refactoring
- move folder or package
- Set namespaces on a complete package (recursively)
- The possibility for adding a resorce entity (dlg, or class, etc.) without creating a package
Debugger
- Collections (map, set) displayed more user friendly in variables/etc window
Others
- Tool for generating XML parser/writer from XSD files
- PIE: Support for integer64