Prof. Dr. R. Laue                                                                                                                                 
      WS0203           
                                
     Informatik III 
                                          
     Übungsblatt 10
                                          
     Abgabe: 16.1.03 vor der Vorlesung 
                      
URL:         
      /axel/informatik3_ws0203_blatt10.html
       
          Dieses  Übungsblatt ist in Zweiergruppen 
     zu  bearbeiten. 
            
                   
                   
Aufgabe 25 attributierte Grammatik (6 Punkte)
           
    
    Die Ausdrücke, die folgende
  Grammatik akzeptiert, dürfen, wie in C, Zuweisungen innerhalb
von  Zuweisungen enthalten.
         
S -->E 
    E --> E=E 
    E --> E*E 
    E --> (E) 
    E --> identifier
    E --> E[ziffer]
    E --> ziffer
     
    Man konstruiere eine attributierte Grammatik, 
 die entscheiden kann, ob ein Ausdruck (=E)  ein "l-value" ist.  
 Man benutze dazu ein vererbtes Attribut "seite".  Unter l-value versteht man einen Ausdruck, der als linke 
 Seite einer Zuweisung auftauchen darf. D.h. es gibt einen zugehörigen 
 Speicherplatz.  
  
  Bitte mit vererbtem Attribut!! 
    
    
    
    Aufgabe 26 EQN (3+3 Punkte)
    
  Die Aufgabe 24 beschreibt einen Ausschnitt aus der EQN Sprache. Dabei sind
 noch Mehrdeutigkeiten (d.h. verschiedene mögliche Syntaybäume)
möglich. 
  a) man gebe ein Beispiel für eine Mehrdeutigkeit (3 Punkte) Zusatzpunkte
 für weitere wirklich verschiedene.
  b) man modifiziere die Grammatik um diese zu beseitigen. Gebe die Grammatik
 mit Attributen in einer Form an, dass ein Keller zur Verarbeitung ausreicht.
        
       
      
     
    
    
     Aufgabe 27 Taschenrechner  (2+2+2 Programmier Punkte)
    
Entwerfen Sie eine Methode, die es erlaubt lokale Variablen zu verwenden.
Wie sollte die Implementierung dafür geändert werden. Wie muss
die Grammatik geändert werden. Zeigen Sie an einem Beispiel die Funktionsweise.
Schriftlich abzugeben, keine konkrete Implementierung.