Categories

There are currently no items in your shopping cart.

User Panel

Forgot your password?.

Rock the JVM! Advanced Scala and Functional Programming

Video Introducing this tutorial


Welcome! Administrative and Setting up Dev Environment :
Welcome! Administrative and Setting up Dev Environment
How to Make the Best Out of This Course

A Taste of Advanced Scala :
Welcome!
Recap: The Scala Basics
Dark Syntax Sugar
Advanced Pattern Matching
Advanced Pattern Matching, Part 2

Advanced Functional Programming :
Welcome!
Partial Functions
Functional Collections: A functional Set
Enhancing A Functional Set
A Functional Set, level 9000: A Potentially Infinite Set
Moar Functional Collections!
Currying and Partially Applied Functions
Lazy Evaluation
Lazy Evaluation Exercise: A Potentially Infinite Stream
Infinite Streams Proficiency: More Exercises
Monads
Monads: Exercises

Functional Concurrent Programming :
Welcome!
Intro to Parallel Programming on the JVM
Concurrency Problems on the JVM
JVM Thread Communication
Producer-Consumer, Level 2
Producer-Consumer, Level 3 + Excercises
JVM Thread Communication Exercises
Futures and Promises
Futures, Part 2
Futures, Part 3
Futures, Part 4 + Exercises
Scala & JVM Standard Parallel Libraries

Implicits :
Welcome!
Enter Implicits
Organizing Implicits
Type Classes, Part 1
Type Classes, Part 2
Pimp My Library!
Type Classes, Part 3
A Type Class End-to-End example: JSON Serialization
A Type Class Use Case: The Magnet Pattern
Scala Java conversions

Mastering the Type System :
Welcome!
Advanced Inheritance
Variance
Variance Exercises
Type Members
Inner Types and Path-Dependent Types
Structural Types and Compile-Time Duck Typing
Self Types
Recursive Types and F-Bounded Polymorphism
Higher-Kinded Types
Reflection, Part 1
Reflection, Part 2
You Rock!