Principles of Programming Languages | Functional, Object-Oriented, Concurrent
Politecnico di Milano
Explore the key programming language concepts and paradigms, including functional, object-oriented, and concurrent programming, through an in-depth analysis of Scheme, Haskell, and Erlang.
University CoursesFunctional ProgrammingProgramming
Introduction
This course gives an overview of Scheme, Haskell and Erlang while analyzing the languages similarities and differences. As a result, many important/prevalent concepts and how they manifest differently in different programming languages are explained. Among these are (purely) functional programming, object orientation, type inference and evaluation order.
Highlights
Covers key programming language concepts and paradigms, including functional programming, object-oriented programming, and concurrent programming
Analyzes the similarities and differences between Scheme, Haskell, and Erlang
Provides insights into the essence of defining programming language concepts and choosing the appropriate level of abstraction
Recommendation
This course is recommended for students who want to gain a deeper understanding of programming language design and the tradeoffs between different programming paradigms. It will help develop the mental flexibility to critically evaluate and choose programming languages for different applications.
How GetVM Works
Learn by Doing from Your Browser Sidebar
Access from Browser Sidebar
Simply install the browser extension and click to launch GetVM directly from your sidebar.
Select Your Playground
Choose your OS, IDE, or app from our playground library and launch it instantly.
Learn and Practice Side-by-Side
Practice within the VM while following tutorials or videos side-by-side. Save your work with Pro for easy continuity.