This release brings compiler support for programming with Objects for encapsulation of state and Functions for notational convenience, improved ISO Standard Compliance, improved handling of dynamic predicates and an integrated example application SMTP Client
Object oriented programming is a popular way to define and manipulate special-purpose data types programs that work on them.
MINERVA supports programming of classes with encapsulation of internal state of objects and access to the objects with methods.
Benefit is notational compactness and ease-of-use of the resulting programs.
details at Manual/Reference/Objects
Functions are a well known and frequently used important special case of relations.
MINERVA supports programming of arithmetic and non-arithmetic functions.
Benefit is notational compactness and efficiency.
details at Manual/Reference/Functions
You plug this internet mail client right into your application.
details at ExamplePrograms/Applications/SMTP_Client
details at Manual/Reference/Predicates/arithm_eval/is
A file that was compiled with -dynamic can be unloaded with unload/1.
unload(+Package)details at Manual/Reference/Predicates/clause_creat_destruct/unload
Loaded files that are candidates for unloading with unload/1 can be determined with
loadad(?Package) loaded(?Package,-PredicateList)details at Manual/Reference/Predicates/clause_creat_destruct/loaded/
The compiler now recognizes the directives
:- initialization(Goal). % equivalent to :- init(Goal). :- ensure_loaded(File). % equivalent to :- init(load(File). % load/1 loads a file at most one time. :- import(Package). % shall replace ":- package(Package)."
details at Manual/Reference/Directives/
abolish/1 now conforms to the standard, i.e. calling a predicate after doing abolish/1 on it will raise a undefined_predicate exception.
retract_all/1 replaces the former function of abolish/1, i.e. all clauses are deleted but the predicate ist still defined as dynamic. A call will return fail, not an exception.
With this release of MINERVA we discontinue support for previous releases. Please also re-read the Release Notes of previous versions of MINERVA.
We appreciate the valuable comments we received from our users. Thank you!
You have feedback on this release or requests for the next? Please let us know!
| scroll to top |
|