Books & Videos

Table of Contents

Chapter: Introduction

Introduction

01m 49s

Libraries And Setting Up Our Environment

01m 44s

About The Author

00m 36s

How To Access Your Working Files

01m 15s

Chapter: Functional Programming

What Is Functional Programming?

04m 8s

Why Functional Programming?

11m 12s

First-Class Functions

01m 35s

Recursion

04m 32s

Higher-Order Functions

07m 7s

Modifying Data Structures

02m 31s

Chapter: A Tour Of FP Libraries

Immutable Data Structures: Introduction To Pyrsistent

05m 21s

Immutable Data Structures: How Pyrsistent Works

04m 33s

Toolz: A Functional Standard Library

07m 34s

Hypothesis: Property-Based Testing

05m 50s

Effect: Isolation Of Side Effects

06m 53s

Chapter: Implementing A Game

Writing A Game: Interactive Fiction

01m 48s

Implementing A Text Adventure

04m 57s

Adding A Challenge To Our Game - Part 1: Props And Inventory

06m 47s

Adding A Challenge To Our Game - Part 2: Lock And Key

06m 11s

Chapter: Testing

Writing Unit Tests For Our Simulation Code

04m 52s

Stateful Testing With Hypothesis

04m 19s

Testing Our Game With Hypothesis

07m 11s

Chapter: User Interface

Creating A Text-Based UI

05m 24s

Testing Effects With Mocks

05m 56s

Chapter: Integrating With An Imperative Third-Party Library

Using An Imperative Library: SQLite

03m 24s

Using An Imperative Library: Storing And Loading Data

04m 20s

Refactoring Imperative Code

03m 30s

Adding Storage To The Game Loop

07m 45s

Chapter: First-Class Effects

The Desire For First-Class Effects

03m 31s

Making Our Imperative Shell Pure

04m 31s

Performing Effects

02m 18s

Testing Effects

06m 27s

Creating Custom Intents

05m 29s

Chapter: Web UI

Introduction To Flask

05m 1s

Making Flask Functional

06m 25s

A Functional Web UI For Our Game

06m 10s

Chapter: Conclusion

Wrapping Up And What To Do Next

01m 55s