This site

    Recent site activity

    Weekly Schedule

    Week 1

    • Organizational matters
    • Software requirements
    • Introduction
    • Scott, Chapter 1

    Week 2

    Week 3

    Week 4

    Week 5

    Week 6

    • Test 1 discussion
    • Presentations: ML, Haskell

    Week 7

    • Brief presentation: Amentra/Red Hat
    • Project 1d discussion: beta-substitution and lazy evaluation
    • Presentations: Scala, Prolog

    Week 8

    • Project 1d discussion: beta-substitution and lazy evaluation
    • Algebraic view of list operations (further examples of making recursion more systematic)
    • Presentation: JavaScript

    Week 9

    • Tree iterators
    • Infinite streams
    • Presentation: Perl
    • Test 2

    Week 10

    • Project 1e discussion
    • Type systems
      • strong versus weak
      • static versus dynamic
      • type safety and type erasure
    • Scripting languages
    • Presentations: Ruby, Groovy

    Week 11

    • Tree depth wrap-up
    • Type systems wrap-up
    • Concurrency
    • Presentations: Ada, Erlang

    Week 12

    Week 13

    • Test 3 brief discussion
    • Project 2 discussion
      • event-based notification (for progress reporting)
      • threads and thread pools versus tasks or activities
    • Concurrency
    • Examples
    • Presentation: XQuery
    Comments