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.
ofrecido por


Programming Languages, Part A
Universidad de WashingtonAcerca de este Curso
Habilidades que obtendrás
- Recursion
- Higher-Order Function
- Pattern Matching
- Functional Programming
ofrecido por

Universidad de 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.
Programa - Qué aprenderás en este curso
Introduction and Course-Wide Information (Start Here)
Welcome! Start here! Learn about this course and how it's organized.
Software Installation and Homework 0
This module contains two things: (1) The information for the [unusual] software you need to install for Programming Languages Part A. (2) An optional "fake" homework that you can turn in for auto-grading and peer assessment to get used to the mechanics of assignment turn-in that we will use throughout the course. You can do this module either before or after watching the first few "actual course content" videos in the next module, but you will want to get the software installed soon so you can learn by actively trying out variations on the code in the videos. You will need to install the software to do the homework.
Section 1 and Homework 1
It's time to dive in! Start with a careful reading of the "Section 1 Welcome Message" and go from there.
Section 2 and Homework 2
This section is a particularly rewarding one where a lot of ideas come together to reveal a surprisingly elegant underlying structure in ML. As usual, start with the welcome reading, dive into the material, and leave plenty of time to approach the programming assignment methodically.
Section 3 and Homework 3 -- and Course Motivation
This section is all about higher-order functions -- the feature that gives functional programming much of its expressiveness and elegance -- and its name! As usual, the first reading below introduces you to the section, but it will make more sense once you dive in to the lectures.
Reseñas
- 5 stars93,80 %
- 4 stars5,14 %
- 3 stars0,18 %
- 2 stars0,12 %
- 1 star0,74 %
Principales reseñas sobre PROGRAMMING LANGUAGES, PART A
Awesome course. A wonderful introduction to statically typed functional programming with a simple and concise language. After I took this course, Scala started to make more sense.
Awesome introduction to functional programming. A wonderful supplement to my working language Scala. Would be helpful for everyone working with functional programming.
I took this course about 10 years off the college, and it was excellent refresher on the topics I don't use on a daily basis. Absolutely great lecturer, great videos and study materials!
Much much better than I ever expected even though I had already seen how good the instructor's other video lessons are -- definitely worth the time to take the course and do the home work.
Preguntas Frecuentes
¿Cuándo podré acceder a las lecciones y tareas?
¿Qué recibiré si compro el Certificado?
¿Hay ayuda económica disponible?
¿Tienes más preguntas? Visita el Centro de Ayuda al Alumno.