Hyper sprechen

HyperTalk ist eine verfahrensrechtliche Programmiersprache auf höchster Ebene geschaffen 1987 von Dan Winkler und verwendet in Verbindung mit dem Hypermediaprogramm des Apple Computer's HyperCard von Bill Atkinson. Das Hauptzielpublikum von HyperTalk begann Programmierer, folglich wurden Programmierer von HyperTalk gewöhnlich Autoren und den Prozess genannt zu schreiben, dass Programme "scripting" genannt wurden. Schriften von HyperTalk sind schriftlichem Englisch ziemlich ähnlich, und verwenden eine der Programmiersprache von Pascal ähnliche Logikstruktur.

Die gegen den Fall unempfindliche Sprache wurde zuerst interpretiert, aber ist 'eigentlich kompiliert' seit HyperCard 2.x geworden. Es unterstützt die grundlegenden Kontrollstrukturen von Verfahrenssprachen: Wiederholen Sie for/while/until, if/then/else, sowie Funktion und Nachrichten-"Dressierer"-Anrufe (ist ein Dressierer ein Unterprogramm, ein Nachrichtendressierer ist ein Verfahren). Datentypen sind dem Benutzer durchsichtig, Konvertierung geschieht durchsichtig im Vordergrund zwischen Schnuren und Zahlen. Es gibt keine Klassen oder Datenstrukturen im traditionellen Sinn; ihr Platz wurde von speziellen Schnur-Druckfehlern, oder eher "Listen" von durch Kommas abgegrenzten "Sachen" genommen (in späteren Versionen das "itemDelimiter" Eigentum hat erlaubt, einen willkürlichen Charakter zu wählen).

Objektorientierter HyperTalk

HyperTalk war nicht eine ausschließlich verfahrensrechtliche Sprache. Schriften wurden mit Gegenständen in Dateien von HyperCard (so genannte "Stapel") vereinigt, und HyperTalk hat erlaubt, diese Gegenstände auf verschiedene Weisen zu manipulieren, ihre Eigenschaften mit dem "Satz"-Befehl zum Beispiel ändernd. Gegenstände wurden mit einer Syntax in der Nähe von natürlicher Sprache gerichtet, wo Gegenstände hinsichtlich der aktuellen Karte angegeben wurden, oder der Maschinenbediener verwendet wurde, um die absolute Position eines Gegenstands anzugeben:. Seitdem Knöpfe und Felder auch auf der Hintergrundschicht bestehen konnten, aber ihr Inhalt würde sich zwischen Karten unterscheiden, gab es s, s usw. Gegenstände konnten durch ihren Namen, Z-Einrichtungszahl, oder durch eine einzigartige Ausweisnummer gerichtet werden, die sich gewöhnlich überall in einer Lebenszeit eines Gegenstands nicht geändert hat. Um über Gegenstände (joinedly verwiesen auf als s in HyperCard 2.2 und später) zu wiederholen, hat man einfach ihre Zahl nach dem Fragen z.B verwendet.

HyperTalk hat auch voll aufgeblühte Schrift-Kontrolle über die eingebauten Zeichnungswerkzeuge, einfach durch scripting die erforderlichen Änderungen in Farbe-Werkzeugen und dem Simulieren von Maus-Bewegungen mit und die Befehle zur Verfügung gestellt.

HyperTalk hat auch Nachrichten (d. h. Ereignisse) gesandt an Gegenstände verwendet, Benutzerwechselwirkung zu behandeln. Z.B wurde die Nachricht an einen Knopf gesandt, als der Benutzer darauf geklickt hat und gesandt wurde, als der Benutzer die Maus darin befreit hat, um seine Handlung auszulösen. Ähnlich hatte es die periodische Nachricht... und verschiedenen anderen Nachrichten, die mit der Navigation zwischen verschiedenen Karten in einem Stapel von HyperCard, sowie dem Benutzereingang (...), und Systemereignisse verbunden sind. So weit die Texter betroffen wurden, gab es keine Hauptereignis-Schleifen wie auf anderen Verfahrensprogrammiersprachen.

Das Verlängern von HyperTalk

Obwohl die Sprache von HyperTalk gerade wie HyperCard selbst ermattet hat, hat es eine zweite Miete auf dem Leben durch sein Steckprotokoll, so genannte Außenbefehle (XCMDs) und Außenfunktionen (XFCNs) erhalten, die heimische Codebehälter waren, die Stapeln (als spezifische Mittel) mit einem einzelnen Zugang-Punkt und Rückwert beigefügt sind. XCMDs und XFCNs konnten gerade wie die regelmäßige Nachricht und Funktionsdressierer aus Schriften von HyperTalk genannt werden, und sind auch im Stande gewesen, Nachrichten an die Anwendung von HyperCard zurückzusenden. Einige unternehmungslustige XCMD Autoren haben fortgeschrittene Eigenschaften wie volle Farbenunterstützung (ColorizeHC, HyperTint, AddColor), vielfache Fenster des speziellen Zwecks (Schnell, Boulevardblatt, Textoid, Listoid, ShowDialog, MegaWindows), Schinderei und Fall-Unterstützung und verschiedene Hardware-Schnittstellen in die Sprache hinzugefügt.

Nachkommen von HyperTalk

Verschiedene scripting Sprachen haben ihre Stichwörter von HyperTalk genommen. Sie werden in genanntem xTalk einer lose definierten Familie allgemein umgruppiert.

  • CompileIt! - Gespräch - Ein Stapel von HyperCard und XCMD durch Tom Pittman, der erlaubt hat, heimischen 68000 Maschinencode (z.B für XCMDs und XFCNs) aus dem Code von HyperTalk zu kompilieren, und die heimischen Werkzeugkasten-Routinen von Macintosh zu nennen. CompileIt wurde urladen, d. h. spätere Versionen wurden mit früheren Versionen von sich kompiliert.
  • Double-XX-Talk(?) - Doppelt-XX war ein Leichtgewichtsklon von HyperCard, der sich als eine Hinzufügung zu CompileIt eingeschifft hat! und das erlaubte Laufen von XCMDs und XFCNs ohne HyperCard, und sogar eingeschlossen ein kleiner Dolmetscher von HyperTalk.
  • MediaTalk - Die Sprache von Orakel-Mediagegenständen, ein Nachkomme Plus, und die erste Quer-Plattform Klon von HyperCard. Außerdem der einzige, der aufrichtig modular war.
  • PlusTalk(?) - des Spinnakers Plus (ursprünglich durch das deutsche Format Verlag), der als die Basis für OMO verwendet wurde.
  • SenseTalk - Die Sprache von ALS NÄCHSTES HERVORGEBRACHTEM HyperSense und der VNC-basierten Probewerkzeug-Eierfrucht.
  • SuperTalk - Die Sprache von SuperCard, dem ersten Klon von HyperCard, durch Bill Appleton. Appleton hat auch den populären Weltbaumeister-Abenteuer-Baubastelsatz geschrieben.
  • revTalk - Die Sprache, die in der Revolutionsentwicklungsumgebung selbst durchgeführt ist, ist auf den Unix-hervorgebrachten Klon von HyperCard MetaCard zurückzuführen gewesen, der jetzt auf Klassiker Mac OS, Mac OS X, Windows, Linux und Solaris läuft.
  • XION - Ursprünglich die Sprache einer offenen Quelle Klon von HyperCard, der sich nie verwirklicht hat. Jetzt durchgeführt als OpenXION.

Sowie zweites Niveau klont wie

  • AppleScript - die scripting Hauptsprache von Mac OS des Apfels.
  • Kauderwelsch - die Programmiersprache des Makromediadirektors ist mit einer xTalk ähnlichen Syntax aufgebrochen, obwohl jetzige Versionen in eine Richtung mehr wie JavaScript eingetreten sind.
  • Die (namenlose) scripting Sprache von Softwarexdata von Em und InData, datenveröffentlichenden Einfügefunktionen für QuarkXPress und Adobe InDesign.

Viele von HyperTalk zuerst verbreitete Methode-Namen haben es in spätere Sprachen wie der Ereignis-Dressierer in JavaScript gemacht. Obwohl Asymetrix ToolBook häufig auch als ein Klon von HyperCard betrachtet wird, hat seine scripting Sprache anscheinend wenig Ähnlichkeit mit HyperTalk.

Diese Klone und Dialekte (allgemein verwiesen auf unter dem Namen von XTalk-Sprachen) haben verschiedene Eigenschaften zur Sprache hinzugefügt, die aus einer modernen Programmiersprache, wie das Ausnahme-Berühren, die benutzerbestimmten Gegenstand-Eigenschaften, die Zeitmesser, die Nebenläufigkeit und die sogar benutzerbestimmten Gegenstände erwartet werden.

Einige Beispielschriften

auf mouseUp

stellen Sie "100,100" in pos

wiederholen Sie sich mit x = 1 zur Zahl von Karte-Knöpfen

setzen Sie die Position der Karte-Taste x zu pos

tragen Sie 15 zum Artikel 1 von pos bei

enden Sie wiederholen

beenden Sie mouseUp

</Code>

auf mouseDown

gestellter "Disk:Folder:MyFile" in filePath - kein Bedürfnis, Variablen zu erklären

wenn es eine Datei filePath dann gibt

offene Datei filePath

lesen Sie von der Datei filePath bis zur Rückkehr

stellen Sie es in cd fld "ein Feld"

nahe Datei filePath

setzen Sie den textStyle des Charakters 1 bis 10 des Karte-Feldes "ein Feld" zu kühnem

enden Sie wenn

beenden Sie mouseDown

</Code>

fungieren Sie replaceStr Muster, newStr, inStr

wiederholen Sie sich, während Muster in inStr ist

stellen Sie Ausgleich (Muster, inStr) in pos

gestellter newStr in den Charakter pos zu (pos +the Länge des Musters)-1 von inStr

enden Sie wiederholen

geben Sie inStr zurück

beenden Sie replaceStr

</Code>

Siehe auch

  • Zeigen Sie 7 - eine Programmiersprache mit der ähnlich einem Englisch ähnlichen Syntax an
  • Wiki Pantechnicon Seiten von HyperTalk - ausgezeichnete Sprachverweisung (kontrollieren Strukturen, Ereignisse, eingebaute Funktionen, usw.)

Narr / Staatliche Universität von South Dakota
Impressum & Datenschutz