

Essential Functional-First… by Ian Russell [PDF/iPad/Kindle]
source link: https://leanpub.com/essential-fsharp
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

About the Book
This is a practical book aimed at efficiently getting you up to speed with the essentials of functional-first programming in F#.
Everywhere you look, programming languages are gaining functional features. The problem is that it's not the individual features that make functional programmers happy, it's the way that your approach to writing software and the features work together to help you write simple code to solve interesting problems. This book will help you to discover why F# is such a popular language with those who have spent time learning its secrets.
This book started life as a series of blog posts on my Company's website (https://www.softwarepark.cc/blog). The sum of the content is what a developer needs to know to be able to work on one of our F# Line of Business codebases. I have improved and extended the content, upgraded the code to F# 5 and ensured that the code will run in VS Code.
All of the author's royalties from this book are going to the F# Software Foundation to help them to support the F# community around the world.
About the Author
Table of Contents
-
Preface
- Who should read this book
- Thanks
- About the author
-
Introduction
- Why Choose F#?
- What does this book cover
- Setting up your environment
- Getting to know VS Code and Ionide
- One Last Thing
-
1 - A simple domain modelling exercise
- The Problem
- Initial Version
- Making the Implicit Explicit (1 of 2)
- Making the Implicit Explicit (2 of 2)
- Type Composition
- Summary
- Postscript
-
2 - Function Composition
- Theory
- In Practice
- Multiple Parameters
- Partial Application
- Summary
-
3 - Null and Exception Handling
- Null Handling
- Interop With .NET
- Handling Exceptions
- Function Composition With Result
- Summary
-
4 - Organising Code
- Getting Started
- Solutions and Projects
- Adding a Source File
- Namespaces and Modules
- Problem
- Creating Unit Tests
- Simplifying Our Code
- Extending the Functionality
- Adding Unit Tests for Register Customer
- The Completed Codebase
- Summary
-
5 - Introduction to Collections
- Before We Start
- The Basics
- Core Functionality
- Folding
- Grouping Data and Uniqueness
- Practical Example
- Summary
-
6 - Reading Data From a File
- Setting Up
- Loading Data
- Parsing Data
- Testing the Code
- Final Code
- Summary
-
7 - Active Patterns
- Setting Up
- Partial Active Patterns
- Parameterized Partial Active Patterns
- Multi-Case Active Patterns
- Summary
-
8 - Functional Validation
- Setting Up
- Solving the Problem
- Final Code
- Applicatives
- Summary
-
9 - Single Case Discriminated Union
- Setting Up
- Solving the Problem
- Final Code
- Record Type
- Summary
-
10 - Object Programming
- Setting Up
- Class Types
- Interfaces
- Object Expressions
- Encapsulation
- Equality
- Summary
-
11 - Recursion
- Setting Up
- Solving The Problem
- Tail Call Optimisation
- Expanding the Accumulator
- FizzBuzz Using Recursion
- Quicksort using recursion
- Other Uses Of Recursion
- Further Reading
- Summary
-
12 - Computation Expressions
- Setting Up
- Introducing the Problem
- The Result Computation Expression
- Introduction to Async
- Computation Expressions in Action
- Debugging Code
- Further Reading
- Summary
-
13 - Introduction to Giraffe
- Getting Started
- Running the Sample Code
- HttpHandlers and Combinators
- Next Steps
- Giraffe as an API
- Creating a Custom HttpHandler
- Creating a View
- Tidying up Routing
- Reviewing the Code
- Summary
-
14 - Creating an API with Giraffe
- Getting Started
- Our Task
- Sample Data
- Routes
- Handlers
- Using the API
- Summary
-
15 - Creating Web Pages with Giraffe
- Getting Started
- Our Task
- Configuration
- Converting HTML To Giraffe View Engine
- Next Stage
- Tidying Up
- Summary
-
Summary
- F# Software Foundation
- Resources
- And Finally
Recommend
-
13
Get Grammarlywww.grammarly.com...
-
8
Granny Knot Info Do your shoelaces sit crooked? Do you retie your shoes several times a day? These are both signs of a Granny Knot
-
25
Resize main navigationPreview of SpotifyListen to local favorites and the world’s best playlists.Something went wrongTry relo...
-
12
You can’t learn to swim by reading a book. The same principle applies to coaching engineering managers. In this episode of Dev Interrupted, Ian N...
-
8
Ian Fleming's Commandos: The Story of the Legendary 30 Assault Unit ...
-
6
Ian Lance Taylor:Go泛型使用的一般准则 十一月 7, 2021 0 条评论
-
9
Ian Gladwell (1944–2021) By Len Freeman, Nick Higham and Jim Nagy. Ian Gladwell giving talk “Software for the N...
-
4
F# for the Masses - with Ian Russell236 viewsDec 4, 20214DislikeShareSave
-
7
Psygnosis co-founder Ian Hetherington has died Comment
-
9
Marketing and Positioning a New Tailwind CSS Product Full Stack Radio
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK