home *** CD-ROM | disk | FTP | other *** search
- EINF▄HRUNG
-
-
- Gewi▀, es gibt schon Batchprogrammiersprachen unter Windows. Die
- bekanntesten sind "WinBatch" und "Oriel". "WinBatch" ist eine herausragende
- Sprache, aber leider v÷llig ohne Grafik.
- "WinBatch" von "WilsonWare" (USA) ist sowohl als Shareware oder Vollversion
- (mit deutschem Handbuch) erhΣltlich, als auch als Batchsprache (unter anderem
- Namen) im Norton Desktop fⁿr Windows integriert.
- "Oriel" hingegen hat umfangreiche Grafikbefehle, aber doch einen sehr
- eingeschrΣnkten Befehlsumfang. So gibt es da z.B. keine M÷glichkeit Eingaben zu
- machen oder Dateien von Diskette oder Festplatte zu lesen.
- Beide Sprachen enthalten keinen Compiler. Anwendungen k÷nnen daher nur an
- Leute weitergeben werden, die Ihrerseits diese Sprache gekauft haben.
-
- Ziele der Entwicklung von Profan waren:
-
- * Eine einfache - an BASIC angelehnte - Syntax auch fⁿr den AnfΣnger
- * Alle Grafikm÷glichlkeiten, die "Oriel" bietet ... und noch mehr
- * umfangreiche Datei- und Verwaltungsfunktionen
- * der komplette Interpreter kleiner als 100 kB, keine weiteren DLLs oder sonstige
- Dateien (die 100 kB lie▀en sich in der vorliegenden zweiten Version nicht mehr
- halten ... aber unter 200 kB will ich auch kⁿnftig bleiben).
- * M÷glichkeit, Anwendungen ohne weitere Kosten weiterzugeben.
-
- Herausgekommen ist "Profan". Eine komplette Programmiersprache. Der
- AnfΣnger wird viele BASIC-Befehle in gewohnter Form wiederfinden, u.a.
- PRINT, LOCATE, CLS, INPUT, GOTO, GOSUB, RETURN, IF, WHILE, WEND,
- SOUND, PRINT #n, INPUT #n, END, LET, ...
-
- Auch die Variablen und Konstanten werden weitestgehend wie in BASIC
- gehandhabt.
-
- Bei den Dateioperationen wurde allerdings das etwas vielseitigere Konzept von
- PASCAL ⁿbernommen:
- ASSIGN, RESET, REWRITE, APPEND, RENAME, ERASE, CLOSE, ...
- Mit COPY k÷nnen Dateien kopiert werden und mit CHDIR, MKDIR und RMDIR
- k÷nnen Verzeichnisse verwaltet werden. Spezielle Funktionen geben Auskunft
- ⁿber das aktuelle Laufwerk, den aktuellen Pfad und vieles mehr.
- Dazu kamen dann noch WINDOWS-spezifische Dinge, wie Menⁿs, Listboxen,
- Inputboxen, Load- und Save-Dialoge und vieles mehr.
-
- Und die Kr÷nung sind natⁿrlich die umfangreichen Grafikbefehle, die direkt auf
- den Grafik-Kern von Windows zugreifen: USEBRUSH, USEFONT, USEPEN,
- USEICON, COPYBMP, RECTANGLE, ROUNDRECT, ELLIPSE, ARC, PIE,
- DRAWTEXT, ... Mit LOADBMP und SAVEBMP k÷nnen Bitmap-Grafiken geladen,
- verarbeitet und gespeichert werden.
-
- Mit Windows 3.1 wurde dann auch eine weitere SprachergΣnzung notwendig:
- Ansteuerung aller MultimediagerΣte und Abspielen von WAV-Sounddateien ⁿber
- die Soundkarte. Das Abspielen von Musik-CDs ist ebensowenig ein Problem wie
- das Untermalen von Spielen mit GerΣuschen oder das Abspielen von Microsofts
- Video fⁿr Windows: MCISEND, PLAYSOUND, ...
-
- Der fortgeschrittene Anwender wird vermutlich zur Bildschirmausgabe die
- textorientierten Ausgabebefehle des BASIC weniger verwenden, als vielmehr die
- neuen und mΣchtigen Windows-Befehle.
-
-
- Strukturierte und ⁿbersichtliche Programmierung wird erm÷glicht, indem nur ein
- Befehl pro Zeile erlaubt ist und zahlreiche Kontrollstrukturen verfⁿgbar sind:
- IF ... ELSEIF ... ELSE ... ENDIF, CASE, WHILE ... WEND, GOSUB ... RETURN.
- Mit PROC ... ENDPROC k÷nnen - wie in Pascal - Prozeduren definiert werden und
- mit DEF k÷nnen neue Funktionen definiert werden. In Prozeduren und Funktionen
- gibt es lokale Variablen. Au▀erdem ist beliebiges Einrⁿcken ebenso statthaft, wie
- komplett leere Zeilen.
-
- Im Laufe der Entwicklung kam dann auch noch ein Compiler dazu, der einen sehr
- kompakten Zwischencode erzeugt, der mit einem Runtime-Modul gestartet werden
- kann. Das letzte Glied in der Kette zur kompletten Programmiersprache war dann
- der Linker, der Runtimemodul und Zwischencode zu einer eigenstΣndigen EXE-
- Datei linkt. Und da das Runtime-Modul nur wenig mehr als 120 kB gro▀ ist, sind
- recht aufwendige Windowsapplikationen unter 150 kB m÷glich. Da die fertige
- PROFAN-Applikation immer noch als Runtime-Modul fⁿr weitere Zwischencode-
- Dateien dienen kann und sogar eine ▄bergabe von Parametern m÷glich ist, steht
- der modularisierten Programmierung nichts im Wege. Die Sahnehaube aber ist
- PROFED, die Entwicklungsumgebung: In der vorliegenden zweiten Version wurde
- sie noch einmal krΣftig erweitert: Beliebige Schriftwahl, Projektverwaltung, ...
-
- Ach ja: Das berⁿhmte "Hallo Welt"-Programm in Profan:
-
- Print "Hallo Welt"
- WaitKey
- End
-
- So einfach ist das. Das "WaitKey" steht nur deshalb da, damit der Anwender
- Gelegenheit hat, das Ergebnis zu betrachten: Ein Programm in einem Windows-
- Fenster mit allem was dazugeh÷rt. Sozusagen eine vollstΣndige Windows-
- Applikation. Mit einem Tastendruck oder ⁿber die entsprechende Fensterfunktion
- wird das Programm beendet.
-
- Die Kombination von Interpreter und Compiler bietet interessante Vorteile. Im
- Interpretermodus entwickeln Sie das Programm und testen es aus. Und wenn es
- dann fertig getestet ist, verleihen Sie ihm mit dem Compiler den n÷tigen Drive!
- Esw wird dingend geraten erst ein getestetes Programm zu compilieren, da die
- Laufzeitfehlermeldungen oft weniger aussagekrΣftig sind, als die des Interpreters.
-
-