Stylish F# 6: Crafting Elegant Functional Code for .NET 6, 2nd Edition

  • 5h 20m
  • Kit Eason
  • Apress
  • 2021

Why just get by in F# when you can program in style. This book goes beyond syntax and into design. It provides F# developers with best practices, guidance, and advice to write beautiful, maintainable, and correct code. This second edition, fully updated for .NET 6 and F# 6, includes all new coverage of anonymous records, the task {} computation expression, and the relationship between types and modules.

Stylish F# 6 covers every design decision that a developer makes in constructing F# programs, helping you make the most educated and valuable design choices at every stage of code development. You will learn about the design of types and function signatures, the benefits of immutability, and the uses of partial function application. You will understand best practices for writing APIs to be used by F#, C#, and other languages. Each carefully vetted design choice is supported with compelling examples, illustrations, and rationales.

What You Will Learn

  • Know why, when, and how to code in immutable style
  • Use collection functions, piping, and function composition to build working software quickly
  • Be aware of the techniques available to bring error handling into the mainstream of program logic
  • Optimize F# code for maximum performance
  • Identify and implement opportunities to use function injection to improve program design
  • Appreciate the methods available to handle unknown data values
  • Understand asynchronous and parallel programming in F#, and how it differs from C# asynchronous programming
  • Exploit records and anonymous records as low-overhead, easily comparable containers for structured data
  • This book is for any developer who writes F# code and wants to write it better.

About the Author

Kit Eason is a software developer and educator with more than 20 years of experience. He has been programming in F# since 2011 and is employed at Perpetuum Ltd., working on an extensive network of energy-harvesting vibration sensors fitted to railway rolling stock and infrastructure. Kit is an avid F# user who is passionate about teaching others. He has contributed to several publications, including Apress books Beginning F# and F# Deep Dives. He often teaches on the topic of F# and his popular videos appear on Udemy and Pluralsight.

In this Book

  • The Sense of Style
  • Designing Functions Using Types
  • Missing Data
  • Working Effectively with Collection Functions
  • Immutability and Mutation
  • Pattern Matching
  • Record Types
  • Classes
  • Programming with Functions
  • Asynchronous and Parallel Programming
  • Railway Oriented Programming
  • Performance
  • Layout and Naming
  • Summary