Script-Programmierung Tcl/Tk

  • Titel: Script-Programmierung Tcl/Tk
  • Organisation: UNI SAARLAND
  • Seitenzahl: 16

Skript herunterladen (PDF)

Inhalt

  • Einleitung
  • Was ist eine Script-Sprache
  • Historisches
  • Die Sprache Tcl
  • Das Kommando-Konzept
  • Das Beispiel fac
  • nur Kommandos und Strings
  • Quoting und Substitution
  • Substitution
  • Quoting
  • quoting hell
  • Scoping
  • Automatisierte Variablenerzeugung
  • Fehler und Ausnahmen
  • Fehlerbehandlung
  • Ausnahmebehandlung
  • Weitere Kommandos
  • Eingebaute Kommandos
  • Externe Programme
  • Tk
  • Widgets
  • Geometriemanager
  • Packer
  • Placer
  • Ereignisbehandlung
  • Kommunikation zwischen Anwendungen
  • Canvas
  • Zusammenfassung
  • Literaturverweise

Vorschau

Script-Programmierung Tcl/Tk

Manuel Caroli 8. April 2004

1

INHALTSVER EICHNIS


Inhaltsverzeichnis

1 Einleitung 2 Was ist eine Script-Sprache 3 Historisches 4 Die Sprache Tcl 4.1 Das Kommando-Konzept . . . . . . 4.2 Das Beispiel fac . . . . . . . . . . . 4.3 nur Kommandos und Strings . . . . 4.4 Quoting und Substitution . . . . . . 4.4.1 Substitution . . . . . . . . . 4.4.2 Quoting . . . . . . . . . . . 4.5 quoting hell . . . . . . . . . . . . . 4.6 Scoping . . . . . . . . . . . . . . . 4.7 Automatisierte Variablenerzeugung . 4.8 Fehler und Ausnahmen . . . . . . . 4.8.1 Fehlerbehandlung . . . . . . 4.8.2 Ausnahmebehandlung . . . 4.9 Weitere Kommandos . . . . . . . . 4.9.1 Eingebaute Kommandos . . 4.9.2 Externe Programme . . . . 5 Tk 5.1 5.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 3 4 4 4 5 5 6 6 7 7 9 9 9 10 10 10 11 11 11 12 12 13 13 14 14 15 16

5.3 5.4 5.5

Widgets . . . . . . . . . . . . . . . . . . Geometriemanager . . . . . . . . . . . . 5.2.1 Packer . . . . . . . . . . . . . . . 5.2.2 Placer . . . . . . . . . . . . . . . Ereignisbehandlung . . . . . . . . . . . . Kommunikation zwischen Anwendungen Canvas . . . . . . . . . . . . . . . . . . .

6 usammenfassung 7 Literaturverweise

1 EINLEITUNG


1

Einleitung

¨ ¨ Diese Proseminar-Arbeit soll einen kurzen Uberblick uber Script-Programmierung am Beispiel von Tcl/Tk geben. un¨ chst werden die geschichtlichen Hintergr¨ nde bea u trachtet, um dann die von John K. Ousterhout Ende der achtziger Jahre entwickelte Script-Sprache Tcl n¨ her zu erl¨ utern. Schließlich wird das dazu geh¨ rige Toolkit Tk a a o betrachtet sowie die M¨ glichkeiten, die dadurch er¨ ffnet werden. o o


Was ist eine Script-Sprache

Eine Script-Sprache ist eine Programmiersprache, die nicht kompiliert, sondern interpretiert wird. Das bedeutet, die Script-Dateien sind grunds¨ tzlich im Textformat a ¨ verf¨ gbar und werden so einem Interpreter (meist einer shell“ ) ubergeben. Scriptu ” Programmierung ist vor allem in der Unix/Linux-Welt weit verbreitet (bash, csh, etc.). Aber auch unter MS-DOS werden Dateien mit der Endung *.bat grunds¨ tzlich von a der Shell als Script-Dateien ausgewertet. Hierbei hat jede Shell / jeder Interpreter seine eigene Syntax und seine eigenen Regeln. um Ausf¨ hren von Tcl-Scripts gibt es u die tclsh (Tool Command Language Shell), zum Ausf¨ hren von Tk-Skripts die wish u (Windowing Shell).


Historisches

Script-Sprachen gibt es bereits seit den sechziger Jahren. Eine der ersten dieser ScriptSprachen war JCL (Job Control Language). JCL erm¨ glichte die Kommunikation mit o einem fr¨ hen IBM-Betriebssystem. Diese Kommunikation war speziell auf die Steueu rung von Jobs ausgerichtet. In den siebziger Jahren tauchten die Unix-Shells auf und mit ihnen die M¨ glichkeit o immer gleiche Konfigurationsabl¨ ufe – z. B. beim Start – per Script-Dateien zu autoa ¨ matisieren. Diese Shells stellten, ahnlich wie JCL vor allem Interfaces zur Kommunikation mit dem Betriebssystem dar, wobei es hier bereits Kontrollstrukturen wie while oder if gab und bidirektionale Kommunikation mit Betriebssystem-Kommandos m¨ go ¨ lich war, d. h. Kommandos k¨ nnen Argumente ubergeben bekommen und Werte zur¨ cko u liefern. Ende der achtziger Jahre erschienen dann Tcl und Perl. Hier waren die M¨ glicho keiten f¨ r den Programmierer noch ausgereifter als in den Unix-Shells, d. h. es standen u weitere M¨ glichkeiten offen, die man eigentlich von Systemprogrammiersprachen wie o C kannte, z. B. Referenzen, Prozesse, Prozeduren/Modularisierung etc. In den neunziger Jahren wurde dann schließlich mit Python, Visual Basic und JavaScript eine neue Klasse von Script-Sprachen kreiert, die sogar bis hin zur Objektorientierung moderne Konzepte verwirklichen. Die Entwicklung von Tcl begann in den achtziger Jahren an der University of California in Berkeley. Hier stellten John K. Ousterhout und sein Team fest, dass sie viel eit darauf verwendeten um Kommandosprachen auf spezielle Tools anzupassen. Aus