|  Informatik
        -  Programmiersprache  
Informatik
        ist eine künstliche, formale
        Sprache zur Formulierung von Programmen, die von einem Computer ausgeführt
        werden können. Zur Vermeidung von Mehrdeutigkeiten müssen bei
        Programmiersprachen Syntax
        (Festlegung der Zeichen und Zeichenfolgen, die in einem Programm
        zugelassen sind) als auch Semantik
        (Bedeutung der verwendeten Zeichen und Zeichenfolgen auf dem Rechner,
        auf dem das Programm ausgeführt werden soll) eindeutig definiert sein.
        Je nach dem Grad der Maschinennähe, das heißt dem Grad, in dem die
        Hardware eines Rechnersystems beachtet werden muss, werden
        Programmiersprachen in Maschinensprachen eingeteilt: 
        
         niedere
        oder maschinenorientierte Programmiersprachen (Assemblersprachen)
        
        
         höhere
        oder problemorientierte Programmiersprachen (von der Hardware
        unabhängig)
        
         Höhere Programmiersprachen
        werden mit Übersetzern (Compiler oder Interpreter) in niedere übertragen,
        niedere in höhere mit Aufwärtsübersetzern. 
        
        
        
         Auf der Basis des
        einer Programmiersprache zugrunde liegenden Konzepts werden die höheren
        Programmiersprachen im Wesentlichen in 4 Kategorien eingeteilt:
        
        
         i)         
        Bei imperativen (prozeduralen)
        Programmiersprachen besteht ein Programm (Programmrumpf) aus
        einer Abfolge von Operationen, die jeweils Daten bearbeiten. Wesentlich
        ist das Variablenkonzept, nach dem Eingabewerte in Variablen
        (Speicherzellen) abgelegt und dann weiterverarbeitet werden (z.B. ALGOL,
        BASIC, C, COBOL, FORTRAN, MODULA-2, PASCAL). 
        
         ii)                
        Deklarative
        Programmiersprachen gehen
        davon aus, dass vorrangig nicht die Problemlösung, sondern das Problem
        beschrieben wird, das zu lösen ist. Für die Problembeschreibung gibt
        es verschiedene Ansätze:
        
         a) Bei funktionalen
        (applikativen) Programmiersprachen wird ein Programm als Funktion
        einer Menge von Eingabewerten (Parameter) in einer Menge von
        Ausgabewerten betrachtet (z.B. LISP, LOGO). 
        
         b) Bei prädikativen
        (logischen) Programmiersprachen dient ein Programm zur Beweisführung
        in einem System von Tatsachen und Schlussfolgerungen (z.B. PROLOG).
        
         iii)               
        Verteilte
        und parallele Programmiersprachen
        werden bei der Programmierung von Aufgaben für verteilte Rechner (z.B.
        vernetzte Workstations) und Parallelrechner eingesetzt; in der Regel
        ergeben sich hierbei spezielle Probleme hinsichtlich der Kommunikation
        und Synchronisation, wofür in den Sprachen besondere Sprachkonstrukte
        vorhanden sind. Einerseits wurden eigene Programmiersprachen wie OCCAM,
        PARALLAXIS u.a. entwickelt, andererseits wurden konventionelle
        Programmiersprachen um entsprechende Konstrukte erweitert (z.B. FORTRAN,
        PASCAL). 
        
         iv)              
        In objektorientierten
        Programmiersprachen werden alle zur Problemlösung
        erforderlichen Informationen (Daten und Regeln) als Objekte aufgefasst
        (Objektorientierung), die durch Senden von Nachrichten Informationen
        miteinander austauschen können. Neben den rein objektorientierten
        Programmiersprachen, wie Smalltalk, Eifel, Java, gibt es
        objektorientierte Erweiterungen von Sprachen, wie C++, Object
        Pascal und Oberon (Erweiterung von MODULA-2).  
         
          
        
        Copyright 
        Bertram  1998
        
          
  
     |