MINERVA superseeded IF/Prolog.
Please see
http://www.ifcomputer.co.jp/MINERVA
for details.
We discontinued to sell IF/Prolog Dec 31. 2003.
For current customers, we continue to provide
professional support for IF/Prolog until Dec 31, 2008.
Die Prolog Maschine
Das Constraint Technologie Paket (optional)
Schnittstellen zu anderen Sprachen
Software Engineering
Standards
Die graphische Benutzer-Oberfl?he
Dynamischer Daten Austausch - DDE-Schnittstelle
Andere Features in Version 5.0
System Voraussetzungen
IF/Prolog ist ein sehr performantes und speicher-effizientes Programmiersystem, das es erlaubt, Anwendungen zu schreiben, die sehr einfach in bereits bestehende
Software Pakete einzubetten sind. IF/Prolog kann eng mit dem Betriebssystem oder anderen Programmiersprachen und kommerzieller Software zusammenarbeiten, was einer der wesentlichen Gesichtspunkte moderner Programmierung ist.
IF/Prolog verf?t ?er eine graphische Entwicklungsumgebung und online Hilfe im Stile eines Hypertext Systems. Versierte Programmierer nutzen den graphischen Debugger, Tracer und die Compilierungstools voll aus.
Neu f? Version 5.0 ist ein zus?zliches Constraint Technologie Paket, welches die m?lichen Anwendungsbereiche f? Prolog zus?zlich vergr?sert. Komplexe Optimierungsprobleme wie sie z.B. bei der Ressourcenverwaltung, Produktionsplanung und Fahrplangestaltung auftreten, k?nen deklarativ und expressiv gel?t werden.
Die volle Unterst?zung des ISO Standards f? Prolog bietet Ihnen die Kompatibilit? der Programme und die Investitionssicherheit f? die Zukunft.
IF/Prolog bietet marktf?rende Produkteigenschaften:
- Volle Unterst?zung des ISO Standard.
- Bi-directionale Schnittstellen zu C und C++.
- Eine graphische Entwicklungsumgebung.
- Ein industriell erprobtes Modul Konzept.
- Eine DDE Schnittstelle (Dynamic Data Exchange).
Optionale Komponenten:
- Ein Constraint Technologie Paket.
Wir bieten IF/Prolog mit der gleichen Entwicklungsumgebung f? mehr als 600 Rechner von ca. 70 Hardware Herstellern an. Es ist wahrscheinlich die am weitesten unterst?zte kommerzielle Programmiersprache der Welt. IF/Prolog ist sourcecode-kompatibel auf all diesen Plattformen.
IF/Prolog 5.0 entstand aus ?er 11 Jahren Entwicklungserfahrung bei InterFace Computer GmbH und Siemens Nixdorf Informationssysteme AG.
Der IF/Prolog Kern ist eine state-of-the-art Prolog Maschine, die eine hohe Performanz und Speichereffizienz bietet. Der Kern beinhaltet:
- Einen incrementellen optimierenden Compiler -
der Compiler erlaubt incrementelle Kompilation, Dekompilation und
das Laden von kompiliertem Code, wobei Argumentindizierung und Shallow
Backtracking f? alle Pr?ikate unterst?zt wird.
Weiterhin werden source-to-source und lower level Optimierungen
an kompilierten, nicht modifizierbaren statischen Pr?ikaten angewand.
- Effizientes und flexibles Speichermanagement -
alle Datenbereiche werden transparent f? die Anwendung
speicherbereinigt und in der Gr?se angepasst.
Diese Speicherbereinigung kann in einzelnen oder kombinierten Bereichen
vorgenommen werden, so dass die Zeit f? diese T?igkeit minimiert wird,
was besonders bei Echtzeitanwendungen von grosser Bedeutung ist.
- Das pr?ikat-bezogene Modul-Konzept ist neu f? Version 5.0.
Es wurde redesigned,um data-hiding und Metaprogrammierung in einer
modularen Art zu unterst?zen.
Pr?ikate anderer Programmiersprachen k?nen ebenfalls in Module
aufgenommen und importiert bzw. exportiert werden.
- Echte 32bit Effizienz - IF/Prolog ist eine echte 32bit Applikation, die
eine um einiges h?ere Performanz als andere Prologs unter Windows bietet.
Das Constraint Technologie Paket er?fnet die L?ung komplexer
kombinatorischer Probleme in IF/Prolog. Die folgenden M?lichkeiten
erweitern den Prolog Kern.
- grosse integer und rationale Zahlen -
exakte Arithmetik mit sehr grossen Zahlen.
- Coroutinen - Routinen, die durch die Instantiierung von
Variablen aktiviert werden.
- Numerische Constraints - Lineare Gleichungssysteme ?er
rationalen Zahlen, wobei high level Pr?ikate f? viele
Operationen zur Verf?ung stehen: Summen, Disjunktion, Minimierung,
Maximierung und viele mehr.
- Finite Dom?en - spezifizieren eine Menge von Werten einer Variablen;
durch die Zulassung von nur bestimmten Werten zur Instantiierung
einer Variablen und deren dynamischer Anpassung reduziert diese
Technik den Suchraum erheblich.
- Boolesche Constraints - Relationen, die durch boolesche Aussagenlogik
formuliert werden k?nen, bieten effiziente Manipulationen von
Entscheidungsb?men.
Durch die flexible bi-directionale und reentrant-f?igei Schnittstelle zu C und C++ k?nen IF/Prolog Programme als Software Komponenten so in bestehende Systeme eingebettet werden, dass sie entweder Prozeduren anderer Sprachen aufrufen oder Prolog als intelligenter Server funktioniert. Es gibt einige erw?nenswerte Eigenschaften von Prolog, die IF/Prolog zur richtigen Wahl machen, wenn man seri?e Anwendungen schreiben will:
- Volle Interaktionsm?lichkeit mit den Betriebssystemen -
das Betriebssystem ist sowohl von Prolog als auch von den anderen
Sprachen zug?glich. Prolog kann benutzt werden, um
Kommando-Parameter, Pipes, Dateien und andere Stream Typen vom
Betriebssystem oder benutzerdefiniert zu kontrollieren.
- Eine zwei-Ebenen Schnittstelle von einer anderen Sprache zu Prolog -
erm?licht dem Benutzer, entweder Prolog goals als C-strings zu
?ergeben, die dann geparst werden oder zur Steigerung der Effizienz,
Strukturen in der systemeigenen Darstellung zu bauen,
die einen vordefinierten Satz von Makros verwenden.
- Die Schnittstelle von Prolog zu anderen Sprachen erlaubt Ihnen,
deterministische oder wiederverwendbare Pr?ikate als
Routinen dieser Sprache zu definieren. Diese Pr?ikate sind
genauso effizient wie die built-in Pr?ikate von IF/Prolog selbst.
- Die Verwendung verschiedener Programmiersprachen zusammen mit
IF/Prolog - Der Code der anderen Programmiersprache und der von
Prolog kann beliebig gemischt werden und dabei auch rekursiv
verwendet werden.
- Pr?ikate anderer Programmiersprachen in Modulen -
Routinen anderer Programmiersprachen k?nen in Modulen
zusammengefasst werden, die dann genauso leicht in bestehende
grosse Applikationen eingebettet werden k?nen, wie die Module
die in IF/Prolog selbst geschrieben sind.
- Keine Grenzen - es gibt keine Gr?senbegrenzungen f? Daten, die
zwischen Prolog und anderen Programmiersprachen ausgetauscht werden,
da der Garbage Collector und die Speichervergr?serung auch w?rend der
Ausf?rung von Programmen der anderern Programmiersprache
f? den Nutzer transarent arbeiten.
Das Pr?ikat-basierte Modul-Konzept von IF/Prolog (neu f? Version 5.0) wurde entwickelt, um data-hiding und Metaprogrammierung modular zu unterst?zen. Nur mit IF/Prolog k?nen Module sowohl in ihrer ganzen gegebenen Struktur als auch als Teile genutzt werden, beides M?lichkeiten, die essenziell wichtig f? modernes Software Engineering sind.
IF/Prolog Version 5.0 unterst?zt den ISO Prolog Standard, Pt1 vollst?dig. Sowohl Siemens Nixdorf Informationssysteme AG als auch IF Computer waren in den letzen Jahren aktive Teilnehmer bei den DIN- und ISO- Aussch?sen.
IF/Prolog wurde in ANSI C unter Ber?ksichtigung der ISO 9000 Enwicklungs- Zertifizierung implementiert. Es ist sehr portabel und daher auch sehr stabil.
SNI und IF Computer arbeiten mit anderen f?renden Prolog Herstellern in der Prolog Management Group (PMG) zusammen.
Ein Bildschirm unter Windows
Eine neue graphische Benutzeroberfl?he von IF/Prolog f? MS-Windows bietet schnelle Ausf?rung von Konsultieren, Laden, Debuggen, Tracen und Kompilieren zusammen mit einem ausf?rlichen, online Hypertext Manual.
Im echten MS-Windows Stil k?nen ?er eine Men?eiste per "click" auf die Kn?fe Schl?selfunktionen des Systems aufgerufen werden. Pull-down Men? stellen die gleichen sowie weitere Funktionen zur Verf?ung.
Die online Hypertext Hilfe bietet ein ausf?rliches Manual per Tastendruck. Das Manual ist auf Basis der Pr?ikate und der Funktionalit? indiziert und hilft Ihnen so, das wichtigste Pr?ikat zu finden und nachschauen zu k?nen, welche anderen Pr?ikate mit ?nlicher Funktionalt? verf?bar sind.
Die graphische Benutzeroberfl?he wurde erweitert, um die neue Constraint Technologie voll zu unterst?zen. Der Debugger und Tracer wurden im Vergleich zum alten Debugger komplexer, um einen Ausstieg innerhalb der Constraint-Pr?ikate klarer darstellen zu k?nen.
Speziell f? MS-Windows bietet die DDE (Dynamic Data Exchange) Schnittstelle einfachen und elementaren Zugriff auf andere Anwendungssoftware. DDE bietet ausserdem direkte Kommunikation zu anderern DDE Tools, wie z.B. Visual BASIC, Microsoft Word und Excel.
Diese Schnittstelle ist zusammen mit der C / C$++$ Schnittstelle ein Teil des Standard IF/Prolog Systems f? Windows. Anwendungen k?nen also Vorteile beider Schnittstellen nutzen.
- Unter IF/Prolog kann mit der strikten ISO Standard Syntax gearbeitet
werden, es werden aber auch Pr?ikate der Edinburgh Syntax unterst?zt,
die von Public Domain Prolog Programmen oder Bibliotheken benutzt werden.
- Fremdsprachen Support - IF/Prolog unterst?zt sowohl Fremdsprachen mit
8-bit Zeichensatz als auch eine grosse Anzahl Asiatischer Sprachen
(16- und 32-bit).
- Signal Handling - IF/Prolog kann auf Signale des Betriebssystems
reagieren und mit diesen als System-Prozess zusammenarbeiten.
- Portabilit? -- IF/Prolog bietet eine einheitliche Entwicklungs-
und Runtime-Umgebung auf mehr als 600 Plattformen von mehr als
70 Hardware Herstellern. Es ist wahrscheinlich die am weitesten
verf?bare kommerzielle Programmiersprache der Welt. Der Quellcode
ist auf all diesen Plattformen kompatibel.
- Run Time Systeme - IF/Prolog Programme k?nen in bestehende
Anwendungen eingebettet werden, wobei der interaktive Teil von
Prolog f? den Benutzer nicht mehr sichtbar ist. Diese
Endbenutzerprodukte k?nen dann auf allen Plattformen ausgeliefert
werden, auf denen Prolog lauff?ig ist.
Sie ben?igen eine Runtime Lizenz f? jede unterschiedliche CPU,
auf der die Applikation l?ft.
IF/Prolog ist verf?bar f? Windows 3.1, Windows 3.11 f? Workgroups, Windows NT und Windows '95. Es ist ebenso auf MS-Windows Servern (nicht-PC's) lauff?ig.
Hardware:
- Ein Intel 386, 486 or Pentium kompatibler Prozessor.
- Mindestens 8MB Hauptspeicher.
- Ein 1.4MB 3 1/2" Floppy Laufwerk.
- Alternativ: andere MS-Windows unterst?zende Hardware, z.B. DEC Alpha.
Software:
- Microsoft Windows 3.1, 3.11, NT oder '95 (Enhanced Mode).
- Ungef?r 6Mb freier Plattenspeicher.
- Sollten Sie die IF/Prolog C / C++ Schnittstelle nutzen wollen,
so ist ein 32-bit C / C++ Compiler n?ig. IF/Prolog 5.0 is kompatibel
zu Microsoft Visual C++ und Borland C++.
|