Learning F# functional data structures and algorithms get started with F# and explore functional programming paradigm with data structures and algorithms
If you have just started your adventure with F#, then this book will help you take the right steps to become a successful F# coder. An intermediate knowledge of imperative programming concepts, and a basic understanding of the algorithms and data structures in .NET environments using the C# language...
Otros Autores: | , , , |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Birmingham, England ; Mumbai, [India] :
Packt Publishing
2015.
|
Edición: | 1st edition |
Colección: | Community experience distilled.
|
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009629946006719 |
Tabla de Contenidos:
- Cover; Copyright; Credits; Foreword; Foreword; Foreword; About the Author; Acknowledgments; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Embrace the Truth; Exploring the functional programming paradigm; Thinking functional - why functional programming matters; A historical primer of F#; The Hello World example; A brief F# language primer; Syntactical similarities and differences; Benefits of using F# over C#; Summary; Chapter 2: Now Lazily Get Over It, Again; Setting up the IDE; Your first F# project; Talk is cheap, show me some code
- To understand recursion, you must understand recursionMemoization with Fibonacci ; Towers of Hanoi; Sorting lazily; F# 4.0 - new features; Summary; Chapter 3: What's in the Bag Anyway?; Exploring data structures in F#; Arrays; Lists; List comprehensions; Sequences; Tuples and records; Option types; Sets and maps; Discriminated unions; The active pattern; F# implementation of sorting algorithms; Algorithmic complexity and the Big-O notation; The bubble sort; Quicksort; The merge sort; Summary; Chapter 4: Are We There Yet?; Diving deep into enumerations and sequences ; Enumerating a CSV file
- Query expressionsCreating sequences from collections; Usage considerations for sequences; Summary; Chapter 5: Let's Stack Up; Let's build a stack; Stack with concurrency support; Testing the stack; Algorithm - parenthesis matching using stacks; Summary; Chapter 6: See the Forest for the Trees; Tree as a data structure; The binary search tree; Navigating the tree; Abstract syntax trees; Summary; Chapter 7: Jumping the Queue; Let's make a functional queue; The FSharpx.Collections library; The MailboxProcessor class in F#; Summary; Chapter 8: Quick Boost with Graph; Graphs
- Modeling graphs using F#The shortest path algorithm; Finding the minimal path sum; Summary; Chapter 9: Sets, Maps, and Vectors of Indirections; Sets and maps; Vectors; F# and the Intermediate Language; Summary; Chapter 10: Where to Go Next?; References and further readings; F# language resources; Component design guidelines; Functional programming guides; F# for fun and profit; Data science with F#; Math and statistics programming with F#; Machine learning with F#; Books and interactive tutorials; Try F#; The F# programming wikibook; The F# workshop; The F# cheat sheet; Video tutorials
- Community projects - development toolsCommunity projects - functional programming; Community projects - data science programming; Community projects - the GPU execution; General functional programming; Academic resources; Summary; Index