Login Sign Up

Programming Languages, Part C

University of Washington via Coursera

Coursera based on 461 ratings

Share

0

Overview

[As described below, this is Part C of a 3-part course. Participants should complete Parts A and B first -- Part C "dives right in" and refers often to material from Part A and Part B.] This course is an introduction to the basic concepts of programming languages, with a strong emphasis on functional programming. The course uses the languages ML, Racket, and Ruby as vehicles for teaching the concepts, but the real intent is to teach enough about how...

Syllabus

  • Introduction, Course-Wide Information, and Software Installation (Start Here)
    • Welcome! Start here! Learn about this course and how it's organized.
  • Section 8 and Homework 6 (First Module with Ruby)
    • Let's get started programming with Ruby, including learning about Ruby's variant of (almost) function closures and the "inheritance and overriding" that is the essence of object-oriented programming. The welcome message has a few additional comments about "what makes Ruby different" and how to approach the (rather different) homework assignment, so let's get started...
  • Section 8 and Homework 6 (First Module with Ruby): Lesson Choices
  • Section 9 and Homework 7 (Second Module With Ruby)
    • Welcome to the second week of Part C where we will focus on how functional programming and object-oriented programming encourage such "exactly opposite" decompositions of problems that they are "more alike than you might realize". This is a key opportunity to synthesize much of what we have learned so far. As the welcome message discusses in more detail, we will go a bit beyond this to touch on some related advanced topics and then dive into the last -- and challenging -- programming assignment, which involves porting an interpreter from ML to Ruby.
  • Section 9 and Homework 7 (Second Module With Ruby): Lesson Choices
  • Section 10, Final Exam, and Course Wrap-Up
    • We have reached the last module of Programming Languages! We first study subtyping, how it relates to static types for object-oriented programming, and how it relates to generics. There is no assignment or quiz devoted only to this last "new material", but there is a "final exam" covering Part B and Part C of the course. Enjoy studying for the exam, and don't miss the final "wrap-up" lesson when you're all done!
Programming Languages, Part C
Go to Class

University of Washington via Coursera

18 hours 2 minutes

Paid Certificate Available

English

On-Demand

Instructor

Dan Grossman

Reviews

No reviews yet. Be the first to review!