Chevron Left
Back to Programming Languages, Part A

Learner Reviews & Feedback for Programming Languages, Part A by University of Washington

1,198 ratings
342 reviews

About the Course

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 any language “fits together” to make you more effective programming in any language -- and in learning new ones. This course is neither particularly theoretical nor just about programming specifics -- it will give you a framework for understanding how to use language constructs effectively and how to design correct and elegant programs. By using different languages, you will learn to think more deeply than in terms of the particular syntax of one language. The emphasis on functional programming is essential for learning how to write robust, reusable, composable, and elegant programs. Indeed, many of the most important ideas in modern languages have their roots in functional programming. Get ready to learn a fresh and beautiful way to look at software and how to have fun building it. The course assumes some prior experience with programming, as described in more detail in the first module. The course is divided into three Coursera courses: Part A, Part B, and Part C. As explained in more detail in the first module of Part A, the overall course is a substantial amount of challenging material, so the three-part format provides two intermediate milestones and opportunities for a pause before continuing. The three parts are designed to be completed in order and set up to motivate you to continue through to the end of Part C. The three parts are not quite equal in length: Part A is almost as substantial as Part B and Part C combined. Week 1 of Part A has a more detailed list of topics for all three parts of the course, but it is expected that most course participants will not (yet!) know what all these topics mean....

Top reviews


Dec 03, 2016

I'm just a beginner for CS or SE classes, and find this course really concise and challenging. It opens a door for me to get deeper into programming language. No wonder it got so high average score.


Mar 22, 2017

Great course!\n\nI think this course has just the right balance of theoretical background, formal definitions, and actual examples to make "just right".\n\nThanks Dan, and everybody else involved!

Filter by:

301 - 325 of 337 Reviews for Programming Languages, Part A

By 林桢

Feb 08, 2018

very good!

By Yu Z

Sep 07, 2017


By 刘炎

May 03, 2017

very good!

By yezhisui

Feb 03, 2017


By Alejandro M

Nov 21, 2016


By joan g

Oct 07, 2016


By Fry

Jul 10, 2017

very nice

By 蔡小邦

Jun 21, 2017

very good

By can e

Feb 26, 2017


By rocklct

Oct 06, 2016

very good

By 李财发

Sep 24, 2016


By Paulo J M d S

Aug 09, 2016

The best!

By Anderson R

Oct 02, 2016


By Junlin G

Sep 17, 2018

Love it

By ttttttttttttttttttttttt<>"

Apr 09, 2018


By 刘洋

May 09, 2017


By Tacinight

May 26, 2018


By 徐承恩

Dec 23, 2017






By liruidong

Mar 17, 2018


By 肖守冬

May 07, 2017


By 陈放

Jun 22, 2019


By Mike

Mar 26, 2019


By Hugsy

Oct 23, 2017


By Héctor B A

Sep 01, 2016

Great course overall. It focuses on functional programming concepts like immutability, locally-defined functions, pattern-matching and forces the user to use recursion, taking you out of your for-loop comfort zone. In my humble opinion, maybe the time spent in learning the SML language, which is not the main goal of the course, takes a bit too long, but on the other hand I guess that can't really be helped. Videos are grate and grading procedures are pretty fair. Mind you, the course is fairly time-consuming.