dr. salih yurttas - yurttas@cs.tamu.edu
cpsc332 - programming language design

hrbb 113, mwf 9:10 - 10 a.m.
fall'07 office hours: m-f 10:10-11:20 a.m. & m-f 2:50-3:30 p.m.

yue wang - yuewang81@gmail.com -- tth 3:30-5 p.m. @ hrbb 427a
john scabold - john421@neo.tamu.edu -- mw 2-4 p.m. th 2:30-4:30 p.m. @ hrbb 129


sun-aug 26 mon-aug 27 tue-aug 28 wed-aug 29 thu-aug 30 fri-aug 31 sat-sep 1
1 introduction   programming language paradigms describing syntax and semantics
lexical syntax and analysis safari.oreilly.com
netlibrary.com
  imperative programming
names, bindings, type checking, and scope
expressions and assignment statements

pbin [ utilities ]
 
sun-sep 2 mon-sep 3 tue-sep 4 wed-sep 5 thu-sep 6 fri-sep 7 sat-sep 8
2 imperative programming
statement-level control stuctures, subprograms, program units decomposition/composition by functions
call-return, parameterization
  event-driven programming
swing|awt
windows forms
  event-driven programming
swing|awt
windows forms
 
sun-sep 9 mon-sep 10 tue-sep 11 wed-sep 12 thu-sep 13 fri-sep 14 sat-sep 15
3 event-driven programming
swing|awt
windows forms
  imperative programming
data types
hw-00 is assigned.
  imperative programming
abstract data types
 
sun-sep 16 mon-sep 17 tue-sep 18 wed-sep 19 thu-sep 20 fri-sep 21 sat-sep 22
4 imperative programming
exceptions
  imperative programming
namespaces/packages/modules
  imperative programming
namespaces/packages/modules
hw-00 is due.
 
sun-sep 23 mon-sep 24 tue-sep 25 wed-sep 26 thu-sep 27 fri-sep 28 sat-sep 29
2 object-oriented programming
class members
constructors, destructor, assignment, copy
public, private, protected
hw-01 is assigned.
  object-oriented programming
class members
constructors, destructor, assignment, copy
public, private, protected
  object-oriented programming
accessor, mutator
get, set [ properties ]
hw-02 is assigned.
 
sun-sep 30 mon-oct 1 tue-oct 2 wed-oct 3 thu-oct 4 fri-oct 5 sat-oct 6
6 object-oriented programming
operator overloading
  object-oriented programming
operator overloading
  object-oriented programming
inheritance [single, multiple], polymorphism
overloading, overriding
hw-01 is due.
 
sun-oct 7 mon-oct 8 tue-oct 9 wed-oct 10 thu-oct 11 fri-oct 12 sat-oct 13
7 object-oriented programming
inheritance [single, multiple], polymorphism
overloading, overriding
hw-03 is assigned.
hw-02 is due.
  object-oriented programming
constructor, destructor order
  test 1  
sun-oct 14 mon-oct 15 tue-oct 16 wed-oct 17 thu-oct 18 fri-oct 19 sat-oct 20
8 object-oriented programming
template
  object-oriented programming
generic programming
  object-oriented programming
generic programming
 
sun-oct 21 mon-oct 22 tue-oct 23 wed-oct 24 thu-oct 25 fri-oct 26 sat-oct 27
9 scripting languages
awk, tcl/tk, perl, python, ruby
  scripting languages
awk, tcl/tk, perl, python, ruby
  scripting languages
awk, tcl/tk, perl, python, ruby
hw-04 is assigned.
hw-03 is due.
 
sun-oct 28 mon-oct 29 tue-oct 30 wed-oct 31 thu-nov 1 fri-nov 2 sat-nov 3
10 object-oriented programming
abstract classes
  object-oriented programming
interfaces
  object-oriented programming
interfaces
 
sun-nov 4 mon-nov 5 tue-nov 6 wed-nov 7 thu-nov 8 fri-nov 9 sat-nov 10
11 object-oriented programming
template
  object-oriented programming
generic programming
hw-05 is assigned.
  object-oriented programming
generic programming
hw-04 is due.
 
sun-nov 11 mon-nov 12 tue-nov 13 wed-nov 14 thu-nov 15 fri-nov 16 sat-nov 17
12 concurrency
threads in java
threads in c#
threads in c++
  concurrency
threads in java
threads in c#
threads in c++
hw-05 is due.
  test 2  
sun-nov 18 mon-nov 19 tue-nov 20 wed-nov 21 thu-nov 22 fri-nov 23 sat-nov 24
13 functional languages
lisp
  functional languages
haskell
  no class  
sun-nov 25 mon-nov 26 tue-nov 27 wed-nov 28 thu-nov 29 fri-nov 30 sat-dec 1
14 functional languages
haskell
  typesetting/document languages
postscript
  typesetting/document languages
hypertext/markup
 
sun-dec 2 mon-dec 3 tue-dec 4 wed-dec 5 thu-dec 6 fri-dec 7 sat-dec 8
15 typesetting/document languages
hypertext/markup
         
sun-dec 9 mon-dec 10 tue-dec 11 wed-dec 12 thu-dec 13 fri-dec 14 sat-dec 15
16 final test
8-10 a.m.