Chevron Left
Back to Programming Languages, Part A

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

4.9
stars
1,541 ratings
456 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

YZ
Dec 2, 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.

VA
Mar 4, 2018

Very interesting course! Superb teaching and homework assignments. If you are interested in functional programming or in programming languages in general, this should be one of the must take MOOCs

Filter by:

426 - 450 of 454 Reviews for Programming Languages, Part A

By 肖守冬

May 7, 2017

great

By 陈放

Jun 22, 2019

好的不行

By Mike

Mar 26, 2019

Good

By Hugsy W

Oct 23, 2017

good

By Héctor B A

Sep 1, 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.

By Lorenzo B

Jun 13, 2020

Four stars because for me at least one of the most interesting parts about the course it the comparisons that happen LATER in part B and C, between oop/fp and especially static/dynamic typing; that is, I treat this course as a test to see if you're interested in the whole thing (I am). Otherwise a solid 5/5. Also I personally found that polyml often gives clearer diagnostics than sml/nj, but your mileage may vary here. AND it's my first course here :=)

By Scott v K

Jan 8, 2017

The constructs of learning functional programming are very useful and well explained. This course is about theory with practice problems which are somewhat challenging using SML as the programming language. The only downside of the course is the use of SML, which is fine for educational purposes, but lacks any real development / debugging frameworks and has no commercial usability beyond learning the concepts in the course.

By Matthew G

Feb 15, 2021

The content of this course is very good and easy to follow. It's not a very difficult course. All homeworks can easily be completed by watching the video content. The video presentations do have some sound issues that may make them annoying to watch. The sound issues are present in all videos and take this course in my opinion from a perfect score to a 4/5.

By Aschwin W

Jul 12, 2020

I wanted to learn more about Functional Programming and prepare for a course on Compiler Construction. This course showed how statements and expressions differ. Also using a pure functional programming language is really good to prepare for my daily work and developing a compiler.

By Messias T

Jan 11, 2021

Gostei bastante do curso, entretanto, algumas partes dos homeworks ficaram mal explicadas, além da falta de mais casos de testes para corroborar o que se pedia nas questões.

By Jie G

Jan 18, 2020

Very useful, but I cannot submit my assignment and ML is also not available for my computer

By Atsushi

Jan 6, 2019

the course material was good and fun! but the discussion forum was not so active.

By Arto P

Jan 10, 2021

Clear content and good exercises, which need an investment of time and thinking.

By Chua B Q

May 18, 2019

Solid introduction to functional programming and programming languages concepts.

By Philip A

Nov 29, 2016

The peer review was too time consuming. Otherwise great course

By Steve C

Sep 3, 2020

A challenging course with some deep insight into programming.

By Mark R

Jun 17, 2019

Good intro. to Functional Programming

By CLARISA B H C

Mar 5, 2019

Muy buena información; nivel alto.

By 畅 刘

Jul 29, 2018

Quite interesting~

By Ojesanmi F

Aug 28, 2020

so cool

By LvGJ

Jul 27, 2020

good

By lhdgriver

Sep 29, 2019

Easy

By Roman H

May 24, 2021

Dangerous combination of dry presentation of abstract concepts, and demonstration rather than explanation. The class left me with lots of open questions, most beginning with "why", many followed by "would you", and may not be well suited for an online environment without teacher interaction.

I get the impression you have to really like math, rather than computers and programming, to find this class interesting.

The horrid sound quality from the terrible microphone the teacher used doesn't help make the lessons more enjoyable. Or maybe that's coursera's compression, I'm not sure as I haven't taken many classes here yet.

PS: Something about this comment form is buggy, making proper formatting of my review impossible.

By Andrew M

Nov 10, 2019

This series of courses Part A-C looks amazing BUT using SML/NJ is critical to Part A. On a MAC running Catalina SML will not run, maybe because it utilises 32bit routines which cannot run on Catalina. I found an online version of standard ML but it isn't suited to doing the homeworks.