Functional programming in scala / Paul Chiusano ; Rúnar Bjarnason.

Por: Chiusano, PaulColaborador(es): Bjarnason, RúnarTipo de material: TextoTextoEditor: Shelter Island, NY : Manning ; 2015Descripción: XX, 300 p. : Graficas, DiagramsISBN: 1617290653; 9781617290657Tema(s): ESCALA (LENGUAJE DE COMPUTADORAS) | PROGRAMACIÓN FUNCIONAL (COMPUTADORES)Clasificación CDD: 005.133
Contenidos:
foreword preface acknowledgments about this book Part 1 Introduction to functional programming Chapter 1 What is functional programming? The benefits of FP: a simple example Exactly what is a (pure) function? Referential transparency, purity, and the substitution model Summary Chapter 2 Getting started with functional programming in Scala Introducing Scala the language: an example Running our program Modules, objects, and namespaces Higher-order functions: passing functions to functions Polymorphic functions: abstracting over types Following types to implementations Summary Chapter 3 Functional data structures Defining functional data structures Pattern matching Data sharing in functional data structures Recursion over lists and generalizing to higher-order functions Trees Summary Chapter 4 Handling errors without exceptions The good and bad aspects of exceptions Possible alternatives to exceptions The Option data type The Either data type Summary Chapter 5 Strictness and laziness Strict and non-strict functions An extended example: lazy lists Separating program description from evaluation Infinite streams and corecursion Summary Chapter 6 Purely functional state Generating random numbers using side effects Purely functional random number generation Making stateful APIs pure A better API for state actions A general state action data type Purely functional imperative programming Summary Part 2 Functional design and combinator libraries Chapter 7 Purely functional parallelism Choosing data types and functions Picking a representation Refining the API The algebra of an API Refining combinators to their most general form Summary Chapter 8 Property-based testing A brief tour of property-based testing Choosing data types and functions Test case minimization Using the library and improving its usability Testing higher-order functions and future directions The laws of generators Summary Chapter 9 Parser combinators Designing an algebra, first A possible algebra Handling context sensitivity Writing a JSON parser Error reporting Implementing the algebra Summary Part 3 Common structures in functional design Chapter 10 Monoids What is a monoid? Folding lists with monoids Associativity and parallelism Example: Parallel parsing Foldable data structures Composing monoids Summary Chapter 11 Monads Functors: generalizing the map function Monads: generalizing the flatMap and unit functions Monadic combinators Monad laws Just what is a monad? Summary Chapter 12 Applicative and traversable functors Generalizing monads The Applicative trait The difference between monads and applicative functors The advantages of applicative functors The applicative laws Traversable functors Uses of Traverse Summary Part 4 Effects and I/O Chapter 13 External effects and I/O Factoring effects A simple IO type Avoiding the StackOverflowError A more nuanced IO type Non-blocking and asynchronous I/O A general-purpose IO type Why the IO type is insufficient for streaming I/O Summary Chapter 14 Local effects and mutable state Purely functional mutable state A data type to enforce scoping of side effects Purity is contextual Summary Chapter 15 Stream processing and incremental I/O Problems with imperative I/O: an example Simple stream transducers An extensible process type Applications Summary index
Resumen: Functional Programming in Scala es un tutorial seria para los programadores que buscan aprender FP y aplicarlo a su trabajo diario. El libro guía a los lectores a partir de las técnicas básicas a temas avanzados en una progresión lógica, concisa y clara. En ella, usted encontrará ejemplos concretos y ejercicios que se abren al mundo de la programación funcional.
Etiquetas de esta biblioteca: No hay etiquetas de esta biblioteca para este título. Ingresar para agregar etiquetas.
    Valoración media: 0.0 (0 votos)
Tipo de ítem Ubicación actual Colección Signatura Info Vol Copia número Estado Fecha de vencimiento Código de barras Reserva de ítems
LIBRO - MATERIAL GENERAL LIBRO - MATERIAL GENERAL Bodega
Fondo general
Colección / Fondo / Acervo / Resguardo 005.133 C543f (Navegar estantería) Ej. 1 1 Disponible 023582
Total de reservas: 0

Incluye indice

foreword
preface
acknowledgments
about this book
Part 1 Introduction to functional programming

Chapter 1 What is functional programming?
The benefits of FP: a simple example
Exactly what is a (pure) function?
Referential transparency, purity, and the substitution model
Summary
Chapter 2 Getting started with functional programming in Scala
Introducing Scala the language: an example
Running our program
Modules, objects, and namespaces
Higher-order functions: passing functions to functions
Polymorphic functions: abstracting over types
Following types to implementations
Summary
Chapter 3 Functional data structures
Defining functional data structures
Pattern matching
Data sharing in functional data structures
Recursion over lists and generalizing to higher-order functions
Trees
Summary
Chapter 4 Handling errors without exceptions
The good and bad aspects of exceptions
Possible alternatives to exceptions
The Option data type
The Either data type
Summary
Chapter 5 Strictness and laziness
Strict and non-strict functions
An extended example: lazy lists
Separating program description from evaluation
Infinite streams and corecursion
Summary
Chapter 6 Purely functional state
Generating random numbers using side effects
Purely functional random number generation
Making stateful APIs pure
A better API for state actions
A general state action data type
Purely functional imperative programming
Summary
Part 2 Functional design and combinator libraries

Chapter 7 Purely functional parallelism
Choosing data types and functions
Picking a representation
Refining the API
The algebra of an API
Refining combinators to their most general form
Summary
Chapter 8 Property-based testing
A brief tour of property-based testing
Choosing data types and functions
Test case minimization
Using the library and improving its usability
Testing higher-order functions and future directions
The laws of generators
Summary
Chapter 9 Parser combinators
Designing an algebra, first
A possible algebra
Handling context sensitivity
Writing a JSON parser
Error reporting
Implementing the algebra
Summary
Part 3 Common structures in functional design

Chapter 10 Monoids
What is a monoid?
Folding lists with monoids
Associativity and parallelism
Example: Parallel parsing
Foldable data structures
Composing monoids
Summary
Chapter 11 Monads
Functors: generalizing the map function
Monads: generalizing the flatMap and unit functions
Monadic combinators
Monad laws
Just what is a monad?
Summary
Chapter 12 Applicative and traversable functors
Generalizing monads
The Applicative trait
The difference between monads and applicative functors
The advantages of applicative functors
The applicative laws
Traversable functors
Uses of Traverse
Summary
Part 4 Effects and I/O

Chapter 13 External effects and I/O
Factoring effects
A simple IO type
Avoiding the StackOverflowError
A more nuanced IO type
Non-blocking and asynchronous I/O
A general-purpose IO type
Why the IO type is insufficient for streaming I/O
Summary
Chapter 14 Local effects and mutable state
Purely functional mutable state
A data type to enforce scoping of side effects
Purity is contextual
Summary
Chapter 15 Stream processing and incremental I/O
Problems with imperative I/O: an example
Simple stream transducers
An extensible process type
Applications
Summary

index

Functional Programming in Scala es un tutorial seria para los programadores que buscan aprender FP y aplicarlo a su trabajo diario. El libro guía a los lectores a partir de las técnicas básicas a temas avanzados en una progresión lógica, concisa y clara. En ella, usted encontrará ejemplos concretos y ejercicios que se abren al mundo de la programación funcional.

No hay comentarios en este titulo.

para colocar un comentario.

Haga clic en una imagen para verla en el visor de imágenes