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 (in Part A), Racket (in Part B), and Ruby (in Part C) as vehicles for teaching the concepts, but the real intent is to teach enough about how any language “fits together” to make you more effective programming in any language -- and in learning new ones.
This repo contains all my work for this course. All the code base, quiz questions, screenshot, and images, are taken from, unless specified, Programming Languages on Coursera. The course is also avilable on washington.edu.
VERBOSE CONTENT WARNING: YOU CAN JUMP TO THE NEXT SECTION IF YOU WANT
Here I released these solutions, which are only for your reference purpose. It may help you to save some time. And I hope you don't copy any part of the code (the programming assignments are fairly easy if you read the instructions carefully), see the quiz solutions before you start your own adventure.
Currently, this repo has 3 major parts you may be interested in and I will give a list here.
-
Part A: ML and Functional Pragramming
- Week 2 - Homework 1 - ML Functions, Tuples, Lists, and More: 104/100
- Week 3 - Homework 2 - Datatypes, Pattern Matching, Tail Recursion, and More: 104/100
- Week 4 - Homework 3 - First-Class Functions and Closures: 100/100
- Week 5 - Part A - Exam
-
Part B: Racket and Dynamically Typed Language
-
Part C: Ruby and Object-Oriented Language