<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Mercury_%28Programmiersprache%29</id>
	<title>Mercury (Programmiersprache) - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Mercury_%28Programmiersprache%29"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Mercury_(Programmiersprache)&amp;action=history"/>
	<updated>2026-06-05T20:07:36Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Mercury_(Programmiersprache)&amp;diff=488084&amp;oldid=prev</id>
		<title>imported&gt;Derkoenig: lf</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Mercury_(Programmiersprache)&amp;diff=488084&amp;oldid=prev"/>
		<updated>2026-04-11T22:13:50Z</updated>

		<summary type="html">&lt;p&gt;lf&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infobox Software&lt;br /&gt;
|Name                  = Mercury&lt;br /&gt;
|Logo                  = &lt;br /&gt;
|Screenshot            = &lt;br /&gt;
|Beschreibung          = funktional-logische Programmiersprache&lt;br /&gt;
|Maintainer            = [[Zoltan Somogyi|Zoltán Somogyi]]&lt;br /&gt;
|Hersteller            = [[University of Melbourne|Universität Melbourne]]&lt;br /&gt;
|Erscheinungsjahr      = &lt;br /&gt;
|AktuelleVersion       = &lt;br /&gt;
|AktuelleVersionFreigabeDatum = &lt;br /&gt;
|AktuelleVorabVersion  = &lt;br /&gt;
|AktuelleVorabVersionFreigabeDatum = &lt;br /&gt;
|Betriebssystem        = [[plattformunabhängig]]&lt;br /&gt;
|Programmiersprache    = &lt;br /&gt;
|Kategorie             = [[Programmiersprache]]&lt;br /&gt;
|Lizenz                = Compiler: [[GNU General Public License|GPL]], Bibliothek: [[GNU Lesser General Public License|LGPL]]&lt;br /&gt;
|Deutsch               = &lt;br /&gt;
|Website               = [https://mercurylang.org/ www.mercurylang.org]&lt;br /&gt;
|Dateien               = &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Mercury&amp;#039;&amp;#039;&amp;#039; ist eine stark an [[Prolog (Programmiersprache)|Prolog]] angelehnte [[Programmiersprache]]. Sie vereint Elemente&amp;lt;!-- stimmt das noch? --&amp;gt; aus der [[Funktionale Programmierung|funktionalen]] und der [[Logische Programmierung|logischen]] Programmierung. Die erste Version wurde von Fergus Henderson, Thomas Conway und Zoltan Somogyi entwickelt und am 8. April 1995 veröffentlicht.&lt;br /&gt;
&lt;br /&gt;
Mercury ist eine „reinere“, und damit stärker [[Deklarative Sprache|deklarative]] Sprache als Prolog, weil es im Gegensatz zu Prolog keine „nicht-logischen“ Eigenschaften hat, wie den Cut-Operator (ein Prolog-Konstrukt, das [[Backtracking]] verhindert) oder [[Imperative Programmierung|imperative]] [[Eingabe und Ausgabe]]. Dies macht die Programmierung sequentieller Algorithmen etwas unhandlich, erleichtert jedoch die [[Compiler#Programmoptimierung (ausführlich)|Optimierung]] der Programme. Damit kann deutlich schnellerer Code erzeugt werden, als es mit Prolog möglich ist.&lt;br /&gt;
&lt;br /&gt;
Mercury hat einige Eigenschaften für eine bessere [[Softwaretechnik]], es wird [[Compiler|kompiliert]] statt [[Interpreter|interpretiert]], wie es sonst bei logischen Programmiersprachen üblich ist, und realisiert ein fortgeschrittenes, striktes [[Datentyp|Typ-]] und &amp;lt;!-- was ist das? --&amp;gt; Mode-System. Die Autoren behaupten, diese Eigenschaften, zusammen mit der abstrakten Natur der logischen Programmierung, beschleunigten die Erstellung zuverlässiger Programme. Mercurys [[Modul (Software)|Modul]]-System ermöglicht die Unterteilung in abgeschlossene Einheiten, was in der Vergangenheit ein Problem logischer Programmierung darstellte. (Wobei einige Prolog-Implementierungen ebenfalls ein Modul-System einführten.)&lt;br /&gt;
[[Ein- und Ausgabe]] wird durch [[Wegwerftyp|Uniqueness types]] verwirklicht.&lt;br /&gt;
&lt;br /&gt;
Mercury verfügt über mehrere [[Frontend und Backend|Backends]] wie „low-level [[C (Programmiersprache)|C]]“ (das originale Mercury-Back-end), „high-level&amp;amp;nbsp;C“, Microsofts [[Intermediate language|IL]] für das [[.Net-Framework]], Suns [[Java Virtual Machine|JVM]] und [[Assemblersprache|Assembler]] unter Verwendung des [[GNU Compiler Collection|gcc]]-Back-ends, wobei die letzten drei Back-ends derzeit noch Alpha- oder Beta-Status haben. Mercury wird an der [[University of Melbourne|Universität Melbourne]] unter der Leitung von [[Zoltan Somogyi]] entwickelt und ist für die meisten [[Unix]]-Plattformen, für [[Mac OS X]] und mit Hilfe von [[Cygwin]] und [[MinGW]] auch für [[Microsoft Windows]] verfügbar.&lt;br /&gt;
&lt;br /&gt;
== Beispielprogramm in Mercury ==&lt;br /&gt;
&lt;br /&gt;
[[Hallo-Welt-Programm]]:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;Prolog&amp;quot;&amp;gt;&lt;br /&gt;
 :- module hello.&lt;br /&gt;
&lt;br /&gt;
 :- interface.&lt;br /&gt;
&lt;br /&gt;
 :- import_module io.&lt;br /&gt;
&lt;br /&gt;
 :- pred main(io.state, io.state).&lt;br /&gt;
 :- mode main(di, uo) is det.&lt;br /&gt;
&lt;br /&gt;
 :- implementation.&lt;br /&gt;
&lt;br /&gt;
 main(!IO) :-&lt;br /&gt;
 	io.write_string(&amp;quot;Hello, World!\n&amp;quot;, !IO).&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(nach Ralph Beckets&amp;lt;ref&amp;gt;[https://mercurylang.org/documentation/papers/book.pdf Mercury tutorial] (PDF; 239&amp;amp;nbsp;kB)&amp;lt;/ref&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://mercurylang.org/ Offizielle Website]&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Logische Programmiersprache]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Derkoenig</name></author>
	</entry>
</feed>