DDD Academy
No upcoming sessions

Functional Programming & Domain-Specific Languages

Essentials
English

Your Instructors

What?

Functional Programming (FP) is a powerful programming paradigm based on a very simple notion: the central unit of computation is the function, whose outputs are uniquely determined by its inputs.

Why?

What makes Functional Programming unique is that its ideas have steadily matured over many decades. Its compact notation, powerful abstraction mechanisms and ease of reasoning have systematically convinced programming language researchers and designers. As a consequence, its influences can be seen in most present-day programming languages and libraries. Indeed, it is hard to find a language that does not support higher-order programming and anonymous functions.

How?

This two-day course provides a basic introduction to the core concepts of Functional Programming by means of the Haskell programming language. Because Haskell is a purely functional programming language, it is one of the best settings to study functional concepts in their most essential form, before identifying and applying them in other language settings.

This course has a particular focus on embedded domain-specific languages (DSLs). DSLs are a powerful problem-solving technique that highlights many aspects of the functional approach to programming.

Target Audience

This course is aimed at industry participants who want to better understand the basic concepts of Functional Programming.

We assume a working knowledge of programming in some (not necessarily functional) programming language (Java, C#, Python, ...).

Contents

Day 1:

  • Haskell basics
  • Practice Session
  • Algebraic datatypes and pattern matching
  • Practice Session
  • Recursion
  • Practice Session

Day 2:

  • Higher-order functions and recursion schemes
  • Practice Session
  • Domain-specific languages, part 1
  • Practice Session
  • Domain-specific languages, part 2
  • Practice Session

Sessions & Booking

Upcoming Sessions

No upcoming sessions yet.

Get in touch and we'll keep you posted.

Book for your team

We can organize this workshop privately for your company, tailored to your domain.

Contact us

Stay in the Loop

Get notified about new workshops, early-bird discounts, and exclusive content on DDD, Architecture, and Software Design.

No spam, unsubscribe anytime. Join 5,000+ developers.