CSCI 4500/6500 Programming Languages

 

Spring 2006

--- Subject to Change ---


In General:

Homework/Projects will be assigned on Tuesdays BEFORE midnight, please check this web-page
Homework/Projects are due a week from assignment at midnight unless otherwise specified.
Slides may be updated until the time of lecture.



 
Week Date Topic Reading PDF Assignments Notes
  Course Introduction
01   Jan 10 Syllabus, policies and preliminaries HW 1.  
  Jan 11 Overview and Motivation of Programming Languages Chapter 1    
  Jan 12 Programming Language History See slides   - Taking Pictures with Digital Camera - Please subscribe to email list at URL: Drop/Add ends at noon (1000-5999 courses only)
  Syntax:
02   Jan 17 Programming Language Syntax Chapter 2 HW 2: Parser

Resources:
Program: Lex/Yacc

Drop/Add ends at noon (Graduate 6000+ level courses only)
  Jan 18 Topic/presentation selection      
  Jan 19 Scanning & Lex A Compact Guide to Lex & Yacc    
  Lexing/Parsing
03   Jan 24 Parsing & Yacc Chapter 2 & 4
  Jan 25 Design of Programming Languages       Presenter 1: David Luper
  Jan 26      
  Functional Programming:
04   Jan 31 Functional Programming Concepts & Introduction to Scheme Chapter 10 HW 3: Scheme Fractals. Program: Scheme    
  Feb 01 Algol & influence on Simula       Presenter 2: Brad Wolfe
  Feb 02 Evaluation Order & Higher Order Functions & a little SML   HW 3a: Scheme warm-up.   Groundhog Day: Phil says six more weeks of Winter! (2005)
  Names, Scopes and Binding
05   Feb 07 Chapter 3    
  Feb 08 Semantics       Presenter 3: Kelly Weaver
  Feb 09          
  Control Flow:
06   Feb 14   Chapter 6 Hold programming for midterm study  
  Feb 15 Functional programming       Presenter 4: Corey Stark
  Feb 16          
  Review & Midterm:
07   Feb 21      
  Feb 22 study for midterm Chapter 1-4 & 6      
  Feb 23 Midterm I Chapter 1-4 & 6      
  Control Flow:
08   Feb 28 Go over Midterm Control Flow Chapter 1-4 & 6 HW 4: SML prime numbers. Program: SML
  Mar 01 More aspects of ALGOL and its descendants       Presenter 5: Alex Drazdowski
  Mar 02         Middle of Term
  Scripting Languages:
09   Mar 07 Introduction Scripting Languages Chapter 13   Withdrawal Deadline: Tue March 07
  Mar 08 Scripting Languages       Presenter 6: Solomon Key
  Mar 09        
 
  Mar 14         Spring Break
  Mar 15         Spring Break
  Mar 16         Spring Break
  Scripting:
10   Mar 21 Introduction to Python Chapter 13    
  Mar 22 Type inference (Cardelli & Wegner's polymorphism paper)     Presenter 7: George Vulov
  Mar 23 Continue Pythons     HW 5: Python clarify Program: Python
  Types I:
11   Mar 28 more on Python   [slides also listed above]  
  Mar 29 Abstraction and Types (Liskov's CLU)       Presenter 8: Dong Zhang
  Mar 30 Introduction Types, Data Types Chapter 7    
  Types II:
12   Apr 04 pointers, recursive types Chapter 7      
  Apr 05 GOLOG       Presenter 9: Cole Sherer
  Apr 06 HCI experiment        
  Logic Programming:
13   Apr 11 Introduction to logic programming Chapter 11 HW 6: Prolog Sudoku (preview) Program: Prolog
  Apr 12 Multiple Inheritance       Presenter 10: Steve Hanek
  Apr 13 CSP and installation tutorial        
  Subroutines:
14   Apr 18 Stack management Chapter 8   Program: Ruby
  Apr 19 Parameter passing, exceptions        
  Apr 20 Midterm II Chapters 7-8, 11, 13      
  Objects:
15   Apr 25 Overview Chapter 9    
  Apr 26 Recursion     Presenter 11: Jason Young
  Apr 27 Smalltalk, Ruby and scripting objects        
  Course Conclusion:
18   May 01
(Monday)
        Last day of classes
  May 02
(Tuesday)
        Reading Day
  May 03
(Wednesday)
        Final's Week: Day 1
  May 04
(Thursday)
Our Final Exam:
3:30-6:30pm
Chapters 1-4, 6-11 & 13     Final's Week: Day 2
  May 05
(Friday)
        Final's Week: Day 3
  Finals:
  May 08
(Monday)
        Final's Week: Day 4
  May 09
(Tuesday)
      Final's Week: Day 5 Last Day
  May 12 (Friday)         Grades Due
  May 13 (Saturday)         Commencement
   
       


Maria Hybinette (maria@cs.uga.edu)