Who is this class for: The course assumes students are familiar with programming covered by most introductory courses, but it is explicitly designed not to be a particularly advanced course. Students should be comfortable with variables, conditionals, arrays, linked lists, stacks, and recursion (though recursion will be reviewed and expanded upon), and the difference between an interface and an implementation. Students should be eager to write programs in languages new to them. Part C of the course analyzes basic object-oriented concepts and contrast them with those of other languages, so familiarity with Java or a closely related language (e.g., C#) might be helpful for Part C, but it is not necessary for the assignments. This course is based on a course designed for second- and third-year undergraduates: not a first computer science course, but not an advanced course either. So it certainly will not cover everything in the beautiful world of programming languages, but it is a solid introduction. It is designed to be eye-opening and fascinating both for learners seeking a "third or fourth programming course" and for learners with more experience who are looking for a clear and precise foundation in programming languages. The assignments in the course are designed to be challenging, but with everything you need in the course content. An introductory video and another reading discuss assumed background in some more detail in Week 1 of the course.

Created by:  University of Washington

  • Dan  Grossman

    Taught by:  Dan Grossman, Professor

    Computer Science & Engineering
Commitment8-16 hours/week
How To PassPass all graded assignments to complete the course.
User Ratings
4.9 stars
Average User Rating 4.9See what learners said

How It Works
Задания курса
Задания курса

Каждый курс — это интерактивный учебник, который содержит видеоматериалы, тесты и проекты.

Помощь сокурсников
Помощь сокурсников

Общайтесь с тысячами других учащихся: обсуждайте идеи, материалы курса и помогайте друг другу осваивать новые понятия.


Получите документы о прохождении курсов и поделитесь своим успехом с друзьями, коллегами и работодателями.

University of Washington
Founded in 1861, the University of Washington is one of the oldest state-supported institutions of higher education on the West Coast and is one of the preeminent research universities in the world.
Ratings and Reviews
Rated 4.9 out of 5 of 540 ratings

One of the best Courses I have taken so far: Fantastic and interesting content, highly engaging instructor, and great assignments. The course has a lot of content, and you really get to learn the basic ideas of functional programming and not just the syntax of a new programming language. Looking forward for Part B!

With this course I realised that functional programming is not just a hype or a trend. I really became invested in this way of thinking. The course is great, Dan is a great instructor and even more important is that the mentors are doing an excellent job!

Great course, hoping the next one will top it

Exceptional experience, learnt a lot! Will recommend whole heartedly to others. I am onto part B now! Excited to see how racket contrasts with ML.