CMSC 308: Organization of
Programming Languages

(Fall 2015)


Tu Th 12:30-1:50pm  Ruffner 350


Course Information Handout/Syllabus

Academic Honesty handout
Louden and Lambert cover
Instructor:
Scott McElfresh
x2249       Ruffner 346
ProfScottMcElfresh @ gmail.com
Website

Office Hours:
(no appointment needed,
just drop by during these times)


yellow divider
Calendar

Mon, Aug 24

Tue, Aug 25

Topics:
  • Introduction
  • Grammars review
Assigned:
Read chapter 1 in the text.  For each of the exercises on pages 21 and 22, have either:
  • an answer to the exercise
  • a question about the exercise
Wed, Aug 26

Thu, Aug 27
DUE: Chapter 1 stuff

Topics:
Assigned:
  • Read chapter 2 in the text.  For each of the exercises on pages 21 and 22, have either:
    • an answer to the exercise
    • a question about the exercise
    • FOR THIS, you will hand in your paper.
  • Grammars HW (due Thursday)

4pm: Computer Science Majors meeting
Ruffner 312/314
Fri, Aug 28

yellow divider
Mon, Aug 31

Tue, Sept 1
DUE:  (beginning of class)
  • Chapter 2 stuff
Topics:
  • Parsing

Wed, Sept 2

Thu, Sept 3
DUE: (beginning of class)
Topics:
  • beginning functional programming
Assigned:
  • Read chapter 3 up to page 64.
Fri, Sept 4

yellow divider
Mon, Sept 7

Tue, Sept 8

No class.
Wed, Sept 9

Thu, Sept 10

Topics:
  • Scheme/Lisp/Racket programming
Assigned:
Fri, Sept 11

yellow divider
Mon, Sept 14

Tue, Sept 15

Topics:
  • more with Racket
Wed, Sept 16

Thu, Sept 17

Work day
Fri, Sept 18

yellow divider
Mon, Sept 21

Tue, Sept 22

class cancelled due to instructor hospitalization
Wed, Sept 23

Thu, Sept 24

Topics:
  • tuples and association lists
Assigned:
Fri, Sept 25

yellow divider
Mon, Sept 28

Tue, Sept 29

DUE: Parsing hw
Send the parsing hw to my gmail account.

Topics:
  • lambda calculus
Reading:
  • Section 3.6 of the text
Wed, Sept 30

Thu, Oct 1
Due:  Functional Programming hw
Topics:
  • lambda
  • eager vs lazy eval
Fri, Oct 2

yellow divider
Mon, Oct 5

Tue, Oct 6

Topics:
  • lambda
Wed, Oct 7

Thu, Oct 8

EXAM
Fri, Oct 9

yellow divider
Mon, Oct 12 - Tue, Oct 13

FALL BREAK - no class


Wed, Oct 14

Thu, Oct 15

Topics:
  • scoping
  • parameter passing mechanisms
Assigned:
  • Read Chapters 7 and 10 of the text.
Fri, Oct 16

yellow divider
Mon, Oct 19

Tue, Oct 20

Topics:
  • Parameter passing

Asssigned:
Exercise on Parameter modes  (Due Thu, Oct 22)
Wed, Oct 21

Thu, Oct 22
Exercise on Parameter modes


  • Quiz
Fri, Oct 23

yellow divider
Mon, Oct 26

Tue, Oct 27

Topics:
  • Logic and programming
Assigned for Thursday:
  • Read Chapter 4 of the book.
  • Come to class prepared to discuss exercises 4.1, 4.2, 4.4-4.12.    
Wed, Oct 28

Thu, Oct 29

Topics:
  • more with logic programming

Assigned:
Get GNU prolog installed somewhere you can use it.
For Tue, Nov 2:
  •  figure out how to get strings to display rather than a list of ASCII values (like demoed in class)
  • understand the homework linked below
Due Tue, Nov 10 Logic programming 
Fri, Oct 30

yellow divider
Mon, Nov 2

Tue, Nov 3
DUE: as assigned on Oct 29

Topics:
Wed, Nov 4

Thu, Nov 5

Topics:
  • Cut.
Fri, Nov 6

yellow divider
Mon, Nov 9

Tue, Nov 10
Due Logic programming 

No class.
Wed, Nov 11

Thu, Nov 12

Topics:
  • Intor to parallel programming
Read:
Chapter 13 of the book
Fri, Nov 13

yellow divider
Mon, Nov 16

Tue, Nov 17

Topics:
  • parallel processes
Wed, Nov 18

Thu, Nov 19

Topics:
  • QUIZ on logic an parallel programming
Fri, Nov 20

yellow divider
Mon, Nov 23

Tue, Nov 24

Topics:
Wed, Nov 25 - Fri, Nov 27

Thanksgiving Break - no classes
yellow divider
Mon, Nov 30

Tue, Dec 1

Topics:
Wed, Dec 2

Thu, Dec 3

Topics:
Fri, Dec 4

yellow divider
Mon, Dec 7


Tue, Dec 8


Wed, Dec 9


Thu, Dec 10

Final Exam
8-10:30am

Fri, Dec 11


yellow divider