<?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=Clipper_%28Programmiersprache%29</id>
	<title>Clipper (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=Clipper_%28Programmiersprache%29"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Clipper_(Programmiersprache)&amp;action=history"/>
	<updated>2026-05-28T13:48:35Z</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=Clipper_(Programmiersprache)&amp;diff=187946&amp;oldid=prev</id>
		<title>imported&gt;Thomas Dresler: Format</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Clipper_(Programmiersprache)&amp;diff=187946&amp;oldid=prev"/>
		<updated>2025-07-07T07:54:00Z</updated>

		<summary type="html">&lt;p&gt;Format&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                  = Clipper&lt;br /&gt;
|Logo                  = &lt;br /&gt;
|Screenshot            = &lt;br /&gt;
|Beschreibung          = &amp;lt;!--Beschreibung des SCREENSHOTS!--&amp;gt;&lt;br /&gt;
|Maintainer            = &lt;br /&gt;
|Hersteller            =&lt;br /&gt;
|Erscheinungsjahr      = &lt;br /&gt;
|AktuelleVersion       = &lt;br /&gt;
|AktuelleVersionFreigabeDatum = &lt;br /&gt;
|AktuelleVorabVersion  = &lt;br /&gt;
|AktuelleVorabVersionFreigabeDatum = &lt;br /&gt;
|Betriebssystem        = &lt;br /&gt;
|Programmiersprache    = &lt;br /&gt;
|Kategorie             = [[Programmiersprache]]&lt;br /&gt;
|Lizenz                = proprietär&lt;br /&gt;
|Deutsch               = &lt;br /&gt;
|Website               = &lt;br /&gt;
|Dateien               = &lt;br /&gt;
|Management            = &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Clipper&amp;#039;&amp;#039;&amp;#039; ist eine [[Programmiersprache]] und ein [[Compiler]]. Die Programmiersprache wird synonym auch als [[xBase]] bezeichnet, nicht zu verwechseln mit Produkt [[Xbase++]].&lt;br /&gt;
&lt;br /&gt;
== Geschichte ==&lt;br /&gt;
Die erste Clipper-Version wurde im Winter 1985 von der Firma Nantucket herausgebracht. Sie unterstützte in der Anfangszeit hauptsächlich die dBASE-Programmiersprache. Dieses begründete sich darin, dass die Entwickler von Clipper ursprünglich Angestellte der Firma [[Ashton-Tate]] waren, die das überaus erfolgreiche Datenbankprogramm [[dBASE]] entwickelte, mit der bekanntesten und erfolgreichsten Version III Plus. Diese Entwickler hatten erfolglos einen Compiler gefordert, der den Code schützt und unveränderlich macht.&lt;br /&gt;
&lt;br /&gt;
Die erstellten Anwendungen waren eigenständig, und es wurde nicht mehr jeweils für jeden Arbeitsplatz eine dBASE-Lizenz benötigt. Nachdem ursprünglich der reine dBASE-Sprachumfang unterstützt wurde, entwickelte der [[Compiler]] schnell ein eigenes Leben in der Entwicklung, und es wurden [[Alleinstellungsmerkmal]]e hinzugefügt. Die bekannteste Version hieß &amp;quot;Sommer 87&amp;quot;. Im weiteren Entwicklungsverlauf wurde die &amp;#039;&amp;#039;Clipper-Sprache&amp;#039;&amp;#039; objektorientiert (jedoch nur mit vier Klassen und ohne die Möglichkeit, eigene Klassen zu erzeugen) und lehnte sich der Sprache [[C (Programmiersprache)|C]] an. Die bekanntesten Versionen hier wurden 5.01 und 5.2, während der letzten Version 5.3 kein großer Erfolg beschieden wurde. Der Hauptgrund hierfür lag darin, dass inzwischen die [[MS-DOS|DOS]]-Ära beendet wurde und Windows zum beherrschenden Betriebssystem wurde. Clipper ist jedoch rein zeichenorientiert. In Version 5.3 wurde der Versuch unternommen, graphische Strukturen einzubinden. Diese basierten jedoch noch immer auf [[MS-DOS]], nicht auf [[Microsoft Windows|Windows]].&lt;br /&gt;
&lt;br /&gt;
Die Firma Nantucket wurde 1992 von [[Computer Associates]] aufgekauft. In der Folgezeit wurde Clipper weiterentwickelt und zu einem allgemeinen [[Datenbank]]-[[Entwicklungswerkzeug]]. Clipper ist eine [[Höhere Programmiersprache|Hochsprache]], die mit anderen [[Programmiersprache]]n wie [[BASIC]], [[Pascal (Programmiersprache)|Pascal]] und [[C (Programmiersprache)|C]] vergleichbar ist. Zusätzlich hat Computer Associates ab 1994 Clipper mit dem neuen eigenständigen Produkt [[Visual Objects]] von einer prozeduralen Sprache zu einer [[Objektorientierte Programmierung|objektorientierten]] Sprache weiterentwickelt. Visual Objects blieb jedoch ein Nischenprodukt, das später unter dem Namen &amp;quot;Vulcan&amp;quot; weitergeführt wurde.&lt;br /&gt;
&lt;br /&gt;
Der erste Versuch, Clipper-Programme nach Windows zu portieren, wurde von Alaska Software unternommen, einem deutschen Unternehmen. Das Produkt [[Xbase++]] erlaubt es, vorhandene Clipper-Programme bis einschließlich Version 5.2 sofort in ein reines 32-Bit-Programm zu übersetzen. Der Sprachumfang wurde stark erweitert, sodass neben dem reinen Clipper-Funktionsumfang weitere Funktionen etwa für graphische Ausgaben und ActiveX hinzugefügt wurden. Zusätzlich stehen die Funktionen aus den Clipper-Tools zur Verfügung.&lt;br /&gt;
&lt;br /&gt;
Die Firma [[FlagShip|Multisoft]] lieferte seit 1992 die kompatible Entwicklungsumgebung [[FlagShip]], die Clipper-Anwendungen (Sommer&amp;#039;87 bis 5.3) auf [[Linux]], [[Unix]] oder MS-Windows übersetzt, und diese 32-Bit oder 64-Bit Programme sowohl textuell als auch in einer GUI-Umgebung ausführen kann.&lt;br /&gt;
&lt;br /&gt;
Seit 1999 gibt es mit [[Harbour (Compiler)|Harbour]] auch einen freien [[Compiler]]. Ende 2001 wurde dann das [[xHarbour]]-Projekt ins Leben gerufen. &lt;br /&gt;
&lt;br /&gt;
Harbour erzeugt im Gegensatz zum Clipper-Compiler keine Objektdateien, sondern [[C (Programmiersprache)|C]] [[Quellcode]]. Dieser kann mit verschiedenen C-Compilern kompiliert werden. Die ursprüngliche Harbourversion unterstützte genauso wie der Clipper-Compiler keine [[GUI]], sondern nur [[Konsolenanwendung|Konsolenanwendungen]]. &lt;br /&gt;
&lt;br /&gt;
Seit 2002 gibt es das freie [[Harbour (Compiler)#Grafische Benutzeroberflächen|Harbour MiniGUI]] (HMG) [[Programmpaket]], das neben Harbour ein [[Windows API]] für eine [[Grafische Benutzeroberfläche]], einen C-Compiler ([[MinGW]]) und eine IDE enthält. Aktuelle Version ist HMG 3.5 von 2017. Die aktuellste Entwicklung ist HMG extended.&lt;br /&gt;
&lt;br /&gt;
== Beispiele in Clipper ==&lt;br /&gt;
[[Datei:Clipper Helloworld.png|mini|rechts|Aufruf]]&lt;br /&gt;
Ein einfaches [[Hallo-Welt-Programm]]:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;clipper &amp;quot;&amp;gt;&lt;br /&gt;
? &amp;quot;Hallo Welt!&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Eine einfache Datenbank-Eingabemaske:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;clipper &amp;quot;&amp;gt;&lt;br /&gt;
 USE kunden SHARED NEW&lt;br /&gt;
 cls&lt;br /&gt;
 @  1, 0 SAY &amp;quot;KdNr   &amp;quot; GET kunden-&amp;gt;kdnr PICT &amp;quot;999999&amp;quot; VALID kunden-&amp;gt;kdnr &amp;gt; 0&lt;br /&gt;
 @  3, 0 SAY &amp;quot;Name   &amp;quot; GET kunden-&amp;gt;name VALID !empty(kunden-&amp;gt;name)&lt;br /&gt;
 @  4, 0 SAY &amp;quot;Adresse&amp;quot; GET kunden-&amp;gt;adresse&lt;br /&gt;
 READ&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Makro Operator &amp;amp; ===&lt;br /&gt;
Eines der mächtigsten Werkzeuge und Besonderheit der Programmiersprache ist der Makro Operator (runtime compiler). &lt;br /&gt;
&lt;br /&gt;
Hiermit lassen sich sämtliche im Programm eingebundenen Funktionen zur Laufzeit aufrufen.&amp;lt;syntaxhighlight lang=&amp;quot;clipper&amp;quot;&amp;gt;&lt;br /&gt;
function main()&lt;br /&gt;
memvar a,b&lt;br /&gt;
private a:=&amp;quot;version()&amp;quot;, b:=&amp;quot;memoread(&amp;#039;test.txt&amp;#039;)&amp;quot; &lt;br /&gt;
   ? &amp;quot;Hello from&amp;quot;, &amp;amp;a   &lt;br /&gt;
   ? &amp;amp;b   &lt;br /&gt;
   a:=&amp;quot;{&amp;#039;dieses&amp;#039;,&amp;#039;ist&amp;#039;,&amp;#039;eine&amp;#039;,&amp;#039;Zeichenkette&amp;#039;,&amp;#039;und&amp;#039;,&amp;#039;kein&amp;#039;,&amp;#039;Array&amp;#039;}&amp;quot;&lt;br /&gt;
   ? a&lt;br /&gt;
   b:=&amp;amp;a&lt;br /&gt;
   ? &amp;quot; und nun ein &amp;quot;, b[7]&lt;br /&gt;
return nil&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://vivaclipper.wordpress.com Viva Clipper]&lt;br /&gt;
* [https://os.allcom.pl/harbour/ Harbour Playground] Spielwiese&lt;br /&gt;
* [https://harbour.github.io/doc/index.html Reference Guide]&lt;br /&gt;
* [https://harbour.wiki Harbour.wiki]&lt;br /&gt;
* [https://www.hmgextended.com HMG extended]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Programmierwerkzeug]]&lt;br /&gt;
[[Kategorie:Programmiersprache]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Thomas Dresler</name></author>
	</entry>
</feed>