Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Udemy

Scala Advanced, Part 3 - Functional Programming, Performance

via Udemy

Overview

Advanced Functional Programming, Macros, Parser-Combinators, Performance, Profiling, Optimizing

What you'll learn:
  • Advanced Functional Programming, Tail Calls, Trampolines, Functors, Monads, Applicative Functors, Different Monad Patterns
  • Macros, Scala Compiler Phases, Abstract Syntax Trees, Quasiquotes, When and how to use macros
  • Parser Combinators, External DSLs, Grammar Translation, Transformers, Parsing, Packrat Parsers
  • Performance Optimization, JVM Performance Tricks, Profiling, Visual VM

The Escalate Software Scala Advanced course is intended for experienced Scala developers looking to improve their skills, particularly for library and API design and development. It covers topics needed to be effective in producing high quality, correct, powerful and flexible Scala libraries that are still easy to use by others.

This course assumes you have day-to-day Scala development skills equivalent to having taken the Scala Advanced course parts 1 and 2 from Escalate Software. If you have trouble understanding or following the concepts in this course because some of the concepts being presented are assuming something you are unfamiliar with, then we would recommend you check out the Applied courses as these will answer many of your questions.

Part 3covers advanced functional programming concepts and patterns, use of Macros, how to write external DSLs with the parser-combinator library, and how to effectively optimize code by analyzing performance:


  • Functional Programming Building Blocks: ADTs, trampolines, recursion, functions

  • Functional Programming Patterns: Functors, Monads, Applicative Functors

  • Common Functional Patterns: IO, Reader, Writer, State, Free

  • Macros and Quasiquotes

  • External DSLs and Scala's Parser-Combinator Library

  • Profiling and Optimization

  • Code Performance Considerations

It is recommended that you complete Scala Advanced parts 1 and 2 before taking this part. While not strictly necessary, we may assume knowledge from parts 1 and 2 in some of the explanations that could be hard to follow unless you know the material.

This is the final part of the Advanced Scala course. We hope you enjoyed the course and that the material proves useful.

Taught by

Dick Wall

Reviews

4.7 rating at Udemy based on 110 ratings

Start your review of Scala Advanced, Part 3 - Functional Programming, Performance

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.