home *** CD-ROM | disk | FTP | other *** search
/ CD Direkt 1995 #1 / Image.iso / cdd / winanw / demo_pf / einf.txt < prev    next >
Encoding:
Text File  |  1994-01-05  |  5.1 KB  |  98 lines

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