Skip to main content
Top

1989 | Book

Einführung in die Programmiersprache APL

Authors: Peter P. Bothner, Wolf-Michael Kähler

Publisher: Vieweg+Teubner Verlag

insite
SEARCH

About this book

APL (A Programming Language) ist eine dialogorientierte Programmiersprache, die sowohl im technisch-wissenschaftlichen als auch im kommerziell-administrativen Bereich eingesetzt wird. Der Vorteil gegenüber anderen Programmiersprachen wie z.B. PASCAL, FORTRAN, COBOL und BASIC besteht darin, daß Strukturen wie etwa Vektoren und Matrizen sich mit Hilfe von APL-Operatoren verknüpfen lassen, wobei die Strukturen selbst - und nicht ihre Komponenten - die Operanden sind. Somit können - auch bei komplexen Problemstellungen - kleine und übersichtliche Programme als Lösungen entwickelt werden. Die dialogorientierte Arbeitsweise und die wenigen Regeln zur Beschreibung der Syntax von APL erlauben einen einfachen Zugang und ein Lernen durch Experi­ mentieren, so daß auch Anfänger schon nach kurzer Zeit in der Lage sind, selbständig Problemlösungen zu entwickeln und zur Ausführung zu bringen. APL steht sowohl auf Großrechnern als auch auf Mikrocomputern zur Ver­ fügung. Die Standardisierung der Sprache und die einheitliche Sprachumgebung gewährleisten eine weitestgehende Übertragbarkeit eines APL-Programms von ei­ ner Datenverarbeitungsanlage auf eine andere. In Verbindung mit der Programmiersprache APL steht stets ein System von Dienst­ programmen zur Verfügung, so daß von einem "APL-System" gesprochen wird. Im Zuge der Dezentralisierung von Rechenkapazität sind in den letzten Jahren APL­ Systeme entwickelt worden, die mit Hilfe von Hilfsprozessoren das gesamte Lei­ stungsspektrum eines Mikrocomputers zur Verfügung stellen. Dem daraus resultie­ renden verstärkten Interesse am Einsatz von APL auf Mikrocomputern soll dieses Buch Rechnung tragen.

Table of Contents

Frontmatter
Kapitel 1. Start des APL-Systems
Zusammenfassung
Um eine Einführung in die Leistungsfähigkeit der Programmiersprache APL zu geben, wählen wir als einfaches Anwendungsbeispiel eine Lagerbestandsführung. Es sollen Artikelbestände gespeichert, Zu- und Abgänge vermerkt und der Warenwert berechnet werden. Dies soll interaktiv im Dialog, d.h. im Wechselspiel zwischen Eingabe und Ausführung einer Anforderung, mit dem APL-System “APL/PC Version 2” der Firma IBM (im folgenden kurz “APL-System” genannt) geschehen. Bevor wir lernen, in welcher Form wir unsere Anforderungen an das APL-System stellen können, geben wir eine kurze Beschreibung der Hilfsmittel, die für den Einsatz des APL-Systems erforderlich sind.
Peter P. Bothner, Wolf-Michael Kähler
Kapitel 2. Das Arbeiten im Taschenrechnermodus
Zusammenfassung
Als Einstieg in das Arbeiten mit dem APL-System wollen wir zunächst Anforderungen stellen, wie wir es von einem Taschenrechner her gewohnt sind. Die Tastatur und der Bildschirm des Mikrocomputers übernehmen dabei die Funktion der Tasten und des Sichtfensters eines Taschenrechners. Das APL-System arbeitet interaktiv, d.h. nach der Eingabe einer Anforderung wird diese zunächst ausgeführt, bevor die nächste Anforderung gestellt werden kann.
Peter P. Bothner, Wolf-Michael Kähler
Kapitel 3. Variable und Ausgabe von Werten
Zusammenfassung
Bei den oben angegebenen APL-Anweisungen war es unbefriedigend, daß wir die Werte für die einzelnen Artikel zur Ermittlung des Lagerwerts wiederholt neu eingeben mußten. Sinnvoller ist die Speicherung von Werten unter einem Namen, durch dessen Nennung die Werte jederzeit — ohne eine erneute Dateneingabe — wieder zugänglich sind. Dazu lassen sich in APL Variable einrichten, in denen ein oder mehrere Werte abgespeichert werden. Eine Variable wird durch einen Variablennamen gekennzeichnet, der aus maximal 12 Zeichen bestehen darf. Er ist durch einen Buchstaben einzuleiten, dem bis zu 11 Zeichen folgen dürfen. Diese Zeichen können die Groß- und Kleinbuchstaben des Alphabets, Ziffern oder das Unterstreichungszeichen “_” sein. Die Einrichtung einer Variablen geschieht durch eine Zuweisung mit dem Zuweisungs-Operator “←” in der Form
variablenname ? wert
für die Zuweisung eines einzigen Werts oder für die Zuweisung einer Reihung von Werten:
variablenname reihung_von_werten
Wollen wir etwa die Bestandszahlen der Artikel unter dem Variablennamen ARTKLANZAHL abspeichern, so ordnen wir die Werte “10”, “20”, “5” und “2” der Variablen durch die Zuweisung
Peter P. Bothner, Wolf-Michael Kähler
Kapitel 4. Der Einsatz von Prozeduren
Zusammenfassung
Nachdem die Vektoren ARTKLANZAHL und ARTKLPREIS eingerichtet und erstmalig mit Werten gefüllt sind, lassen sich gezielte Änderungen durch eine Zuweisung an die jeweilige Vektorkomponente vornehmen. Erhöht sich z.B. der Bestand des Artikels, der in der Reihung als erster abgespeichert ist, um den Wert “10”, so können wir dies durch
ARTKLANZAHL[1] ← ARTKLANZAHL[1] + 10
beschreiben. Soll nach dieser und evtl. weiteren Änderungen anschließend wiederum der Lagerwert ermittelt werden, so können wir dafür z.B.
Peter P. Bothner, Wolf-Michael Kähler
Kapitel 5. Datenhaltung in Arbeitsbereichen
Zusammenfassung
Alle während eines APL-Dialogs vereinbarten Variablen und Prozeduren (Funktionen) werden vom APL-System in einem gesonderten Teil des Hauptspeichers — Arbeitsbereich (Working Storage) genannt — abgelegt: Der Arbeitsbereich trägt einen Namen, der zu Beginn eines APL-Dialogs mit dem Namen “CLEAR WS” voreingestellt ist. Dieser Name wird beim Aufruf des APL-Systems auf dem Bildschirm angezeigt.
Peter P. Bothner, Wolf-Michael Kähler
Kapitel 6. Prozeduren zur Bearbeitung von Bestandsdaten
Zusammenfassung
Bislang haben wir auf die einzelnen Artikeldaten, die in den Vektoren im Arbeitsbereich abgespeichert sind, über den der jeweiligen Komponente zugeordneten Index zugegriffen. In der Praxis ist es jedoch üblich, die Bestandsdaten durch Artikelnummern zu adressieren. Daher richten wir einen zusätzlichen Vektor ARTKLNUMMER z.B. durch ARTKLNUMMER ← 123 416 512 713 ein, so daß dem 1. Artikel — mit der Anzahl 10 und dem Preis 50.20 DM — die Artikelnummer “123” zugeordnet ist, dem 2. Artikel — mit der Anzahl “20” und dem Preis “100.50” DM — die Artikelnummer “416” usw.
Peter P. Bothner, Wolf-Michael Kähler
Kapitel 7. Das Arbeiten mit Matrizen
Zusammenfassung
Zur Speicherung der Bestandsdaten haben wir die Vektoren ARTKLNUMMER, ARTKLANZAHL und ARTKLPREIS im Arbeitsbereich eingerichtet, auf deren Komponenten wir jeweils durch die Angabe eines Indexwerts zugreifen.
Peter P. Bothner, Wolf-Michael Kähler
Kapitel 8. Einsatz von Hilfsprozessoren
Zusammenfassung
In den vorausgehenden Kapiteln haben wir beschrieben, wie Daten dialogorientiert über die Tastatur in den Arbeitsbereich eingegeben werden können. Jetzt wollen wir den Fall betrachten, daß die zu verarbeitenden Daten bereits auf einem Datenträger vorliegen, auf den sie z.B. mit Hilfe eines Anwenderprogramms oder eines Editierprogramms wie z.B. dem unter MS-DOS zur Verfügung stehenden Programm EDLIN übertragen worden sind. Wir gehen im folgenden davon aus, daß unsere Bestandsdaten in Datensätzen einer DOS-Datei namens “BESTAND.TXT” auf einer Diskette im Laufwerk “A:” abgespeichert sind. Dabei setzen wir die folgende Datensatz-Struktur voraus: Wir stellen uns die Aufgabe, die gespeicherten Daten satzweise in den Arbeitsbereich einzulesen und die Satzinhalte in die Vektoren ARTKLNUMMER, ARTKLANZAHL, ARTKLPREIS und in die Matrix ARTKLNAME zu übertragen.
Peter P. Bothner, Wolf-Michael Kähler
Kapitel 9. Menüorientierte Dateneingabe
Zusammenfassung
Im folgenden beschreiben wir — als Alternative zur Dateneingabe aus einer DOS-Datei —, wie unsere Artikel-Bestandsdaten über die Tastatur in ein Erfassungsmenü (eine Bildschirmmaske) eingegeben und anschließend zur weiteren Verarbeitung in den Arbeitsbereich übertragen werden können.
Peter P. Bothner, Wolf-Michael Kähler
Kapitel 10. Datenausgabe
Zusammenfassung
In den vorausgehenden Kapiteln haben wir beschrieben, wie Variable im Arbeitsbereich eingerichtet und mit Werten aus einer DOS-Datei bzw. über eine Tastatureingabe belegt werden können. Jetzt wollen wir zeigen, wie sich Daten aus dem Arbeitsbereich in eine DOS-Datei übertragen lassen. Dazu stellen wir uns die Aufgabe, die Inhalte der Variablen ARTKLNUMMER, ARTKLANZAHL, ARTKLPREIS und ARTKLNAME satzweise in die Datei “BESTAND.TXT” auf einer Diskette im Laufwerk “A:” abzuspeichern. Dabei legen wir fest, daß die Datensätze genauso strukturiert sein sollen, wie wir es in Kapitel 8 beim Einlesen von Daten aus einer DOS-Datei vorausgesetzt haben.
Peter P. Bothner, Wolf-Michael Kähler
Kapitel 11. Kommunikation mit Hilfsprozessoren (Shared Variables)
Zusammenfassung
Bislang haben wir Prozeduren (Funktionen) aus Transfer-Dateien zur Kommunikation mit den jeweils korrespondierenden Hilfsprozessoren eingesetzt, wie z.B. die Prozeduren WOPEN, WRITEV und CLOSE aus der Transfer-Datei FILE----AIO zur Kommunikation mit dem Hilfsprozessor AP210 beim Erstellen einer DOS-Datei. Der Einsatz dieser Prozeduren ist bequem und unproblematisch, sofern der Hilfsprozessor die von uns geforderte Leistung fehlerfrei erbringt. In dem Fall jedoch, in dem bei der im Abschnitt 10.1 beschriebenen Prozedur SCHREIBEN etwa nicht mehr genügend Speicherplatz auf unserer Daten-Diskette zur Verfügung steht, bricht die Prozedur WRITEV die weitere Ausführung der Prozedur SCHREIBEN ab und gibt eine Fehlermeldung aus. Um in dieser Situation eine Fehlerbehandlung und damit eine adäquate Weiterführung des Programms zu ermöglichen, darf nicht mittelbar über die Prozedur WRITEV, sondern muß unmittelbar mit dem Hilfsprozessor AP210 kommuniziert werden.
Peter P. Bothner, Wolf-Michael Kähler
Kapitel 12. Prozeduren und Funktionen
Zusammenfassung
Im Kapitel 4 haben wir — soweit es für die Vereinbarung der Prozedur BEWERTUNG erforderlich war — Grundlegendes über das Prozedur-Konzept in APL kennengelernt. Jetzt wollen wir diese Kenntnisse weiter vertiefen. Mit der Vereinbarung einer Prozedur wird es möglich, eine oder mehrere Anweisungen als APL-Programm zusammenzufassen und unter einem Prozedurnamen zu speichern. Anschließend können die Prozeduranweisungen durch den Prozeduraufruf zur Ausführung gebracht werden. Wird eine Prozedur mit formalen Parametern — als Platzhalter — formuliert, so kann die Prozedur mit verschiedenen aktuellen Parametern ausgeführt werden.
Peter P. Bothner, Wolf-Michael Kähler
Backmatter
Metadata
Title
Einführung in die Programmiersprache APL
Authors
Peter P. Bothner
Wolf-Michael Kähler
Copyright Year
1989
Publisher
Vieweg+Teubner Verlag
Electronic ISBN
978-3-663-14161-7
Print ISBN
978-3-528-04692-7
DOI
https://doi.org/10.1007/978-3-663-14161-7