FCards

Concepts explored in the series and where to find them

Concepts

Active patterns

Tabling/Placing cards

Making some rules

Array

A hand of cards

Character codes

Interacting with a player - game state

Interacting with a player - making a move

Collections

A hand of cards

A deck of cards

Constants

A card

Currying

Interacting with a player - making a move

Deconstructing types into their parts

Display the game on the Web

Deployment

Sharing your game with the world

Discriminated Union (DU)

Describing what a card is

Moving Stacks

Aces

Functions

Picking up a card

Generics

Separation of core and our game

I/O

Interacting with a player - game state

Interacting with a player - listening

Interacting with a player - making a move

Displaying the stacks

Tabling/Placing cards

Infinity

Interacting with a player - listening

List

A hand of cards

Making HTML elements

Display the game on the Web

Modules

Organising your things

Separation of core and our game

Organising Projects

MVU (Model-View-Update)

Making our site dynamic

Display the game on the Web

Playing the game on the Web

The beautiful game

Partial Application

Interacting with a player - making a move

Piping

Improving readability using matching and piping

Winning Solitaire

Projects

Organising Projects

Random numbers

Shuffling

Record

Describing what a card is

Records

Tabling/Placing cards

Recursion (rec)

Shuffling

Sequence

A hand of cards

Interacting with a player - listening

A simple one-player game

Set

A hand of cards

Templates

The beautiful game

Tuples

A deck of cards

Type extension

Interacting with a player - game state

Making some rules

Type Parameters

Separation of core and our game

Type Providers

The beautiful game

Updating state

Interacting with a player - making a move

Tabling/Placing cards

Moving Stacks

Visibility

Moving Stacks

Webpages

A basic website

Keywords, Symbols, and Standard Functions

(| … |_|)

Tabling/Placing cards

< ‘A >

Separation of core and our game

@

A hand of cards

[ ]

A hand of cards

a::b

A hand of cards

blazor

A basic website

bolero

A basic website

Making our site dynamic

Display the game on the Web

Playing the game on the Web

The beautiful game

dispatch

Playing the game on the Web

dotnet

Organising Projects

dotnet publish

Sharing your game with the world

Farmer

Sharing your game with the world

fold()

Interacting with a player - making a move

if / else

Picking up a card

initInfinite()

Interacting with a player - listening

let

A card

Picking up a card

list

A hand of cards

map()

A deck of cards

match

Improving readability using matching and piping

Making some rules

module

Organising your things

override

Interacting with a player - game state

A simple one-player game

printfn()

Interacting with a player - game state

private

Moving Stacks

seq

A hand of cards

sprintf()

Displaying the stacks

Aces

take() / takeWhile()

Interacting with a player - listening

type

Describing what a card is

unit (null or nil or nothing)

Separation of core and our game

when

Making some rules

|>

Improving readability using matching and piping

Winning Solitaire