19300001        
        
          Lecture        
      
      WiSe 14/15: Funktionale Programmierung
Klaus Kriegel
Information for students
Comments
Grundlagen der Berechenbarkeit:
- Lambda-Kalkül
- primitive Rekursion
- µ-Rekursion
Einführung in die Funktionale Programmierung (Haskell):
- Syntax (Backus-Naur-Form)
- primitive Datentypen, Listen, Tupel, Zeichenketten
- Ausdrücke, Funktionsdefinitionen, Rekursion und Iteration
- Funktionen höherer Ordnung, Polymorphie
- Typsystem, Typherleitung und –überprüfung
- Algebraische und abstrakte Datentypen
- Ein- und Ausgabe
- Such- und Sortieralgorithmen
Beweisen von Programmeigenschaften:
- Termersetzung
- strukturelle Induktion
- Terminierung
Implementierung und Programmiertechnik:
- Auswertungsstrategien für funktionale Programme
- Modularer Programmentwurf
Suggested reading
- Simon Thompson: Haskell: The Craft of Functional Programming, 2nd Edition, Addison-Wesley, 1999
- Graham Hutton: Programming in Haskell, Cambridge University Press, 2007
- Bird, R./Wadler, Ph.: Einführung in Funktionale Programmierung, Hanser Verlag, 1982
- Hans Hermes: Aufzählbarkeit, Entscheidbarkeit, Berechenbarkeit, Springer-Verlag 1978
31 Class schedule
Additional appointments
Tue, 2015-02-17 12:00 - 14:30Klausur
    
              
                Location:
                
              
                  SR 005/T9 Übungsraum (Takustr. 9)                  
                  Gr. Hörsaal\Taku 9 (Takustr. 9)                  
            
Regular appointments
                  
                    
                      Wed, 2014-10-15 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2014-10-22 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2014-10-29 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2014-11-05 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2014-11-12 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2014-11-19 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2014-11-26 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2014-12-03 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2014-12-10 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2014-12-17 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2015-01-07 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2015-01-14 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2015-01-21 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2015-01-28 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2015-02-04 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Wed, 2015-02-11 10:00 - 12:00                    
                        
    
    
                  
                
              
                  
                    
                      Mon, 2014-10-20 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2014-10-27 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2014-11-03 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2014-11-10 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2014-11-17 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2014-11-24 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2014-12-01 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2014-12-08 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2014-12-15 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2015-01-05 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2015-01-12 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2015-01-19 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2015-01-26 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2015-02-02 10:00 - 12:00                    
                        
    
    
                  
                  
                    
                      Mon, 2015-02-09 10:00 - 12:00                    
                        
    
    
                  
                
              