Schedule (Spring 2019)

2019-02-19: President’s Day

No class.

2019-02-14: More Lambda Calculus

Slides:The Lambda Calculus (4:3 PDF, 16:9 PDF, 16:10 PDF)

The lc tool shown in class can be installed using pip:

$ python3 -m pip install --user lc

Annotated solutions to the examples shown in class: Solutions to λ-Calculus Examples.

2019-02-12: Career Day

No class today, good luck at career day. Go get yourself a career!

2019-02-07: Lambda Calculus

Slides:The Lambda Calculus (4:3 PDF, 16:9 PDF, 16:10 PDF)

Assigned Homework 1. Due Thursday, 02/26 (was 02/21):

2019-02-05: SlytherLisp Intro

Slides:SlytherLisp Introduction (4:3 PDF, 16:9 PDF, 16:10 PDF)

2019-01-31: Exam 1

Exam 1 taken in class.

2019-01-29: Exam 1 Review

Slides:Finished OOP & Exceptions (4:3 PDF, 16:9 PDF, 16:10 PDF)

Reviewed for Exam 1

To Do for Thursday:

  1. Study for Exam 1

2019-01-24: OOP and Exceptions

Slides:OOP & Exceptions (4:3 PDF, 16:9 PDF, 16:10 PDF)

Exam 1 Study Guide

To Do for Tuesday:

  1. LGA-05: Exam 1 Questions

2019-01-22: More Python

Slides:

Finished Python Introduction (4:3 PDF, 16:9 PDF, 16:10 PDF)

More Python (4:3 PDF, 16:9 PDF, 16:10 PDF)

To Do for Thursday:

  1. LGA-04: Object Oriented Programming

2019-01-15: Language Evaluation and Typing Systems

Slides:

Finished Programming Language Concepts (4:3 PDF, 16:9 PDF, 16:10 PDF)

PL Evaluation and Typing Systems (4:3 PDF, 16:9 PDF, 16:10 PDF)

Topics Covered:

  1. Discussed LGA-2
  2. Finished Programming Language Concepts
  3. Covered Programming Language Evaluation and Typing Systems

2019-01-08: Syllabus and Programming Language Concepts

Slides:

Welcome to Programming Languages! (4:3 PDF, 16:9 PDF, 16:10 PDF)

Started Programming Language Concepts (4:3 PDF, 16:9 PDF, 16:10 PDF)

Topics Covered:

  1. Met learning groups
  2. Covered syllabus

Prework:

  1. Read through (or at least skim) the syllabus. It is available online at https://lambda.mines.edu/syllabus.html.

  2. We will be doing our first Learning Group Activity (LGA) in class on Tuesday. (I would like to have made this due on Thursday, but apparently Thursday is Monday.) Here is the description for LGA-01:

    LGA-01

    Define what a programming language is in your own terms. Spend some good time thinking about your definition. Be prepared to discuss your definition with your group on Tuesday.

To Do for Tuesday:

  1. LGA-02: Language Scavenger Hunt