Å·±¦ÓéÀÖ

Jump to ratings and reviews
Rate this book

Functional Programming: A PragPub Anthology: Exploring Clojure, Elixir, Haskell, Scala, and Swift

Rate this book
Explore functional programming and discover new ways of thinking about code. You know you need to master functional programming, but learning one functional language is only the start. In this book, through articles drawn from PragPub magazine and articles written specifically for this book, you'll explore functional thinking and functional style and idioms across languages. Led by expert guides, you'll discover the distinct strengths and approaches of Clojure, Elixir, Haskell, Scala, and Swift and learn which best suits your needs.
Contributing Rich Hickey, Stuart Halloway, Aaron Bedra, Michael Bevilacqua-Linn, Venkat Subramaniam, Paul Callaghan, Jose Valim, Dave Thomas, Natasha Murashev, Tony Hillerson, Josh Chisholm, and Bruce Tate.
Functional programming is on the rise because it lets you write simpler, cleaner code, and its emphasis on immutability makes it ideal for maximizing the benefits of multiple cores and distributed solutions. So far nobody's invented the perfect functional language - each has its unique strengths. In Functional A PragPub Anthology , you'll investigate the philosophies, tools, and idioms of five different functional programming languages. See how Swift, the development language for iOS, encourages you to build highly scalable apps using functional techniques like map and reduce. Discover how Scala allows you to transition gently but deeply into functional programming without losing the benefits of the JVM, while with Lisp-based Clojure, you can plunge fully into the functional style. Learn about advanced functional concepts in Haskell, a pure functional language making powerful use of the type system with type inference and type classes. And see how functional programming is becoming more elegant and friendly with Elixir, a new functional language built on the powerful Erlang base.The industry has been embracing functional programming more and more, driven by the need for concurrency and parallelism. This collection of articles will lead you to mastering the functional approach to problem solving. So put on your explorer's hat and prepare to be surprised. The goal of exploration is always discovery. What You Familiarity with one or more programming languages.

460 pages, Kindle Edition

Published July 20, 2017

10 people are currently reading
62 people want to read

About the author

Michael Swaine

24Ìýbooks5Ìýfollowers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
1 (4%)
4 stars
7 (30%)
3 stars
13 (56%)
2 stars
2 (8%)
1 star
0 (0%)
Displaying 1 - 4 of 4 reviews
Profile Image for Maciej Woźniak.
2 reviews6 followers
March 5, 2018
This book could be much better if it was structured as a whole, not as a series of articles - some things are repeated in chapters about Swift (also some are outdated).
I think that it could use some more theory of functional programming concepts, in exchange of another Swift chapter (for instance).
Even though I didn't learn much (partially because I already know Elixir & Swift), it encouraged me to explore Haskell & Clojure/Lisp further, so in the end it was worth reading
Profile Image for Jacob Tjornholm.
35 reviews3 followers
December 29, 2018
Some interesting articles in this book (it’s really more a collection of articles than a book) but they’re all over the place. I guess this is to be expected with so many authors contributing, but I don’t think it made for a great read. Also, I stumbled on quite a few typos and grammatical errors throughout the book.

For me the most interesting parts were about Swift, because this is a very popular language I knew very little about in advance. I now feel that I have a lot more insight about the good and bad parts of it. And the functional perspective on it was exactly what I wanted.

I’ve never liked Scala and I still don’t, so the book didn’t really affect my opinion there. I was just reminded about many of the reasons I don’t like it.

I did enjoy some of the Haskell material. Mostly because it was about the value of having a good type system rather than about the language itself.

In conclusion, I found this to be a decent book, but I wouldn’t recommend it over a carefully selected list of blog posts about the languages covered here.
Profile Image for Héctor Iván Patricio Moreno.
408 reviews21 followers
December 22, 2022
Esta es una colección de artículos relacionados con la programación funcional y cinco lenguajes en los que puedes hacer programación funcional a diferentes niveles, pero todos tienen las ideas principales: inmutabilidad y trato de funciones como ciudadanos de primer mundo.

La antología empieza muy bien con un recuento de lo que es la programación funcional, su historia y por qué está de moda de nuevo, así como las veces en la historia en la que surgió y "se durmió". Construye muy bien el caso de uso, en el que se muestra cómo la programación funcional es más intuitiva y fácil de entender a nivel de negocio, y muchas veces más fácil de mantener al permitir crear soluciones más concisas. Esta explicación la extiende por algunos capítulos mostrando los ejemplos en diferentes lenguajes y sobre todo comparándolo con la alternativa. Estos capítulos están interesantes, aunque los siento un poco divergentes.

Después, el libro va profundizando en temas muy divergentes de diferentes aspectos de los lenguajes del título, como por ejemplo el manejo de errores de Clojure, el sistema de tipos de Haskell (mi capítulo/artículo favorito) y la concurrencia de Elixir.

Esta última parte es la que no me agradó tanto, no se siente cohesivo el libro, sino se siente como una revoltura de temas muy débilmente ligados.

Sin embargo, si quieres explorar y aprender de diferentes temas relacionados todos por la programación funcional y todas las cosas que tienen que ver con esta, lo recomiendo mucho, pero creo que una lectura práctica (en donde haces o copias todo el código) sería mucho mejor.
Profile Image for Lojicholia .
169 reviews1 follower
October 13, 2022
Definitely enjoyable, but the style of the articles is all over the map; even those of similar styles are quite different. I think the book missed in the intro to demonstrate the constructive nature of functional programming: comparing a manual Java program to a built-in function call in Clojure is hardly a meaningful tell of functional programming’s mindset. Still, an interesting walk over the landscapes of a few different languages, even if sometimes the borders were a bit more rocky than one might expect.
Displaying 1 - 4 of 4 reviews

Can't find what you're looking for?

Get help and learn more about the design.