• For Individuals
  • For Businesses
  • For Universities
  • For Governments
Coursera
  • Log In
  • Join for Free
    Coursera
    • Browse
    • Functional Programming

    Functional Programming Courses Online

    Master functional programming for writing clean and efficient code. Learn about functional paradigms, recursion, and higher-order functions in languages like Haskell and Scala.

    Skip to search results

    Filter by

    Subject
    Required
     *

    Language
    Required
     *

    The language used throughout the course, in both instruction and assessments.

    Learning Product
    Required
     *

    Build job-relevant skills in under 2 hours with hands-on tutorials.
    Learn from top instructors with graded assignments, videos, and discussion forums.
    Learn a new tool or skill in an interactive, hands-on environment.
    Get in-depth knowledge of a subject by completing a series of courses and projects.
    Earn career credentials from industry leaders that demonstrate your expertise.
    Earn career credentials while taking courses that count towards your Master’s degree.
    Earn your Bachelor’s or Master’s degree online for a fraction of the cost of in-person learning.
    Complete graduate-level learning without committing to a full degree program.
    Earn a university-issued career credential in a flexible, interactive format.

    Level
    Required
     *

    Duration
    Required
     *

    Skills
    Required
     *

    Subtitles
    Required
     *

    Educator
    Required
     *

    Explore the Functional Programming Course Catalog

    • Status: Free Trial
      Free Trial
      É

      École Polytechnique Fédérale de Lausanne

      Functional Programming in Scala

      Skills you'll gain: Scala Programming, Apache Spark, Apache Hadoop, User Interface (UI), Programming Principles, Big Data, Software Design, Data Structures, Software Design Patterns, Functional Design, Data Manipulation, Object Oriented Programming (OOP), Heat Maps, Data Visualization Software, Interactive Data Visualization, Computer Programming, Distributed Computing, Data Processing, Real Time Data, Performance Tuning

      4.7
      Rating, 4.7 out of 5 stars
      ·
      11K reviews

      Intermediate · Specialization · 3 - 6 Months

    • Status: Free Trial
      Free Trial
      É

      École Polytechnique Fédérale de Lausanne

      Functional Programming Principles in Scala

      Skills you'll gain: Scala Programming, Programming Principles, Object Oriented Programming (OOP), Functional Design, Software Design Patterns, Computer Programming, Data Structures, Integrated Development Environments, Javascript, Algorithms, Computational Thinking

      4.8
      Rating, 4.8 out of 5 stars
      ·
      8.3K reviews

      Intermediate · Course · 1 - 3 Months

    • Status: Preview
      Preview
      É

      École Polytechnique Fédérale de Lausanne

      Functional Programming Principles in Scala (Scala 2 version)

      Skills you'll gain: Scala Programming, Programming Principles, Data Structures, Functional Design, Object Oriented Programming (OOP), Algorithms, Integrated Development Environments, Computer Programming Tools

      4.8
      Rating, 4.8 out of 5 stars
      ·
      64 reviews

      Intermediate · Course · 1 - 3 Months

    • Status: Free Trial
      Free Trial
      V

      Vanderbilt University

      Functional Programming with Java and Threads

      Skills you'll gain: IntelliJ IDEA, Java Programming, Object Oriented Programming (OOP), Java, Integrated Development Environments, Computer Programming, Open Source Technology, Programming Principles, Distributed Computing, Scalability, Functional Design, Algorithms

      4.1
      Rating, 4.1 out of 5 stars
      ·
      12 reviews

      Intermediate · Course · 1 - 4 Weeks

    • Status: New
      New
      Status: Free Trial
      Free Trial
      P

      Pearson

      Rust Programming Essentials

      Skills you'll gain: System Programming, Rust (Programming Language), Data Structures, Relational Databases, Other Programming Languages, Databases, Data Access, Debugging, Programming Principles, Application Development, Secure Coding, SQL, Object Oriented Programming (OOP), C++ (Programming Language), Maintainability, Interoperability, Software Development, Command-Line Interface, Data Import/Export, File Management

      Beginner · Specialization · 1 - 3 Months

    • Status: Preview
      Preview
      U

      University of Washington

      Programming Languages, Part A

      Skills you'll gain: Software Installation, Programming Principles, Other Programming Languages, Functional Design, Computer Programming, Ruby (Programming Language), Theoretical Computer Science, Object Oriented Programming (OOP), Computational Thinking

      4.9
      Rating, 4.9 out of 5 stars
      ·
      1.9K reviews

      Intermediate · Course · 1 - 3 Months

    What brings you to Coursera today?

    • Status: New
      New
      P

      Packt

      Scala Fundamentals

      Skills you'll gain: Data Structures

      Beginner · Course · 1 - 3 Months

    • Status: Free Trial
      Free Trial
      U

      University of California, Irvine

      Programming with Google Go

      Skills you'll gain: Go (Programming Language), Object Oriented Programming (OOP), Algorithms, JSON, Programming Principles, OS Process Management, Functional Design, Data Structures, System Programming, Development Environment, Software Design, Remote Access Systems, Operating Systems, File Management, Program Development, Software Development Tools, Debugging, Computer Architecture

      4.6
      Rating, 4.6 out of 5 stars
      ·
      3K reviews

      Intermediate · Specialization · 3 - 6 Months

    • Status: Free Trial
      Free Trial
      M

      Meta

      Programming with JavaScript

      Skills you'll gain: Jest (JavaScript Testing Framework), Web Development Tools, Javascript, Unit Testing, Web Applications, Object Oriented Programming (OOP), Scripting Languages, Event-Driven Programming, Node.JS, Scripting, JSON, Computer Programming, Data Structures, Debugging, Package and Software Management, Program Development, Front-End Web Development, Functional Design

      4.7
      Rating, 4.7 out of 5 stars
      ·
      4.8K reviews

      Beginner · Course · 1 - 3 Months

    • Status: Free Trial
      Free Trial
      U

      University of London

      Object Oriented Programming

      Skills you'll gain: Pseudocode, C++ (Programming Language), Object Oriented Programming (OOP), C and C++, Object Oriented Design, Integrated Development Environments, Computer Programming, Programming Principles, Debugging, Data Structures, Program Development, Algorithms, Interactive Design, Data Modeling, Software Engineering, Test Data, Data Validation, User Interface (UI), Unit Testing, Data Management

      Build toward a degree

      4.7
      Rating, 4.7 out of 5 stars
      ·
      233 reviews

      Intermediate · Specialization · 1 - 3 Months

    • Status: Free Trial
      Free Trial
      U

      University of Pennsylvania

      Introduction to Programming with Python and Java

      Skills you'll gain: Matplotlib, Object Oriented Design, Java, Object Oriented Programming (OOP), Data Analysis, Unit Testing, Pandas (Python Package), Java Programming, Eclipse (Software), Application Development, Data Visualization, Data Structures, Data Science, Data Cleansing, Debugging, Pivot Tables And Charts, Data Visualization Software, Programming Principles, Python Programming, Computer Programming

      4.5
      Rating, 4.5 out of 5 stars
      ·
      1.9K reviews

      Beginner · Specialization · 3 - 6 Months

    • Status: Free Trial
      Free Trial
      P

      Packt

      Advanced Spring Concepts and Functional Programming

      Skills you'll gain: Spring Framework, Hibernate (Java), Spring Boot, Java, Object-Relational Mapping, Database Management, Application Frameworks, Data Access, Apache Maven, SQL, Object Oriented Programming (OOP), Model View Controller, Functional Design

      Intermediate · Course · 1 - 4 Weeks

    Functional Programming learners also search

    C Programming
    Programming
    C
    Beginner Programming
    Development
    C Programming Projects
    Programming Projects
    Computer Programming
    1234…364

    In summary, here are 10 of our most popular functional programming courses

    • Functional Programming in Scala: École Polytechnique Fédérale de Lausanne
    • Functional Programming Principles in Scala: École Polytechnique Fédérale de Lausanne
    • Functional Programming Principles in Scala (Scala 2 version): École Polytechnique Fédérale de Lausanne
    • Functional Programming with Java and Threads: Vanderbilt University
    • Rust Programming Essentials: Pearson
    • Programming Languages, Part A: University of Washington
    • Scala Fundamentals: Packt
    • Programming with Google Go: University of California, Irvine
    • Programming with JavaScript: Meta
    • Object Oriented Programming: University of London

    Skills you can learn in Software Development

    Programming Language (34)
    Google (25)
    Computer Program (21)
    Software Testing (21)
    Web (19)
    Google Cloud Platform (18)
    Application Programming Interfaces (17)
    Data Structure (16)
    Problem Solving (14)
    Object-oriented Programming (13)
    Kubernetes (10)
    List & Label (10)

    Frequently Asked Questions about Functional Programming

    Functional programming is a coding language in which everything is in a mathematical function style. It is used on various applications and can be implemented on your daily programming tasks. Functional programming is becoming widespread in the industry and is crucial to learn because it is adaptable to the new data world.‎

    It's important to learn about functional programming because you will have knowledge that will let you have a boost in your career. Functional programming enables you to write programs with higher-order functions, design immutable data structures, and minimize side effects. Another reason to learn functional programming is because it is adaptive to the data world and is a key tool to have with new innovations and when working with big data.‎

    To learn functional programming, you should already have some programming experience and experience in other programming languages like Javascript. You should also have some understanding of using the command line and have programs ready to use in order to apply this skill. Having experience in programming will allow you to have an easier understanding of functional programming and be able to use your prior knowledge in this new programming language.‎

    Online courses can help you learn functional programming by offering practical experience with Guided Projects and assignments. It gives you detailed lectures, readings, and assignments to help you gain an understanding of topics like the fundamentals of functional programming, Scala, Python, and graphic design. Online courses also allow you to have the flexibility and learn on your own time giving you a chance to review and practice the material learned.‎

    Online Functional Programming courses offer a convenient and flexible way to enhance your knowledge or learn new Functional Programming skills. Choose from a wide range of Functional Programming courses offered by top universities and industry leaders tailored to various skill levels.‎

    When looking to enhance your workforce's skills in Functional Programming, it's crucial to select a course that aligns with their current abilities and learning objectives. Our Skills Dashboard is an invaluable tool for identifying skill gaps and choosing the most appropriate course for effective upskilling. For a comprehensive understanding of how our courses can benefit your employees, explore the enterprise solutions we offer. Discover more about our tailored programs at Coursera for Business here.‎

    This FAQ content has been made available for informational purposes only. Learners are advised to conduct additional research to ensure that courses and other credentials pursued meet their personal, professional, and financial goals.

    Other topics to explore

    Arts and Humanities
    338 courses
    Business
    1095 courses
    Computer Science
    668 courses
    Data Science
    425 courses
    Information Technology
    145 courses
    Health
    471 courses
    Math and Logic
    70 courses
    Personal Development
    137 courses
    Physical Science and Engineering
    413 courses
    Social Sciences
    401 courses
    Language Learning
    150 courses

    Coursera Footer

    Skills

    • Artificial Intelligence (AI)
    • Cybersecurity
    • Data Analytics
    • Digital Marketing
    • English Speaking
    • Generative AI (GenAI)
    • Microsoft Excel
    • Microsoft Power BI
    • Project Management
    • Python

    Certificates & Programs

    • Google Cybersecurity Certificate
    • Google Data Analytics Certificate
    • Google IT Support Certificate
    • Google Project Management Certificate
    • Google UX Design Certificate
    • IBM Data Analyst Certificate
    • IBM Data Science Certificate
    • Machine Learning Certificate
    • Microsoft Power BI Data Analyst Certificate
    • UI / UX Design Certificate

    Industries & Careers

    • Business
    • Computer Science
    • Data Science
    • Education & Teaching
    • Engineering
    • Finance
    • Healthcare
    • Human Resources (HR)
    • Information Technology (IT)
    • Marketing

    Career Resources

    • Career Aptitude Test
    • Examples of Strengths and Weaknesses for Job Interviews
    • High-Income Skills to Learn
    • How Does Cryptocurrency Work?
    • How to Highlight Duplicates in Google Sheets
    • How to Learn Artificial Intelligence
    • Popular Cybersecurity Certifications
    • Preparing for the PMP Certification
    • Signs You Will Get the Job After an Interview
    • What Is Artificial Intelligence?

    Coursera

    • About
    • What We Offer
    • Leadership
    • Careers
    • Catalog
    • Coursera Plus
    • Professional Certificates
    • MasterTrack® Certificates
    • Degrees
    • For Enterprise
    • For Government
    • For Campus
    • Become a Partner
    • Social Impact
    • Free Courses
    • Share your Coursera learning story

    Community

    • Learners
    • Partners
    • Beta Testers
    • Blog
    • The Coursera Podcast
    • Tech Blog

    More

    • Press
    • Investors
    • Terms
    • Privacy
    • Help
    • Accessibility
    • Contact
    • Articles
    • Directory
    • Affiliates
    • Modern Slavery Statement
    • Manage Cookie Preferences
    Learn Anywhere
    Download on the App Store
    Get it on Google Play
    Logo of Certified B Corporation
    © 2025 Coursera Inc. All rights reserved.
    • Coursera Facebook
    • Coursera Linkedin
    • Coursera Twitter
    • Coursera YouTube
    • Coursera Instagram
    • Coursera TikTok