Login       My Wishlist
  My Cart
$0.00 / 0 items
 
EMS Linux
Utilizing the Best Tools With Linux
 
International Access
Global Shipping Options Available
  Our Catalog   Functional

Functional Programming, Simplified: (Scala Edition)


Free Shipping Included! Functional Programming, Simplified: (Scala Edition) by CreateSpace Independent Publishing Platform at EMS Linux. Hurry! Limited time offer. Offer valid only while supplies last. If you’ve had trouble trying to learn Functional Programming (FP), you’re not alone. In this book, Alvin Alexander — author of the Scala


Product Description

If you’ve had trouble trying to learn Functional Programming (FP), you’re not alone. In this book, Alvin Alexander — author of the Scala Cookbook and former teacher of Java and Object-Oriented Programming (OOP) classes — writes about his own problems in trying to understand FP, and how he finally conquered it.

What he originally learned is that experienced FP developers are driven by two goals: to use only immutable values, and write only pure functions. What he later learned is that they have these goals as the result of another larger goal: they want all of their code to look and work just like algebra.

While that sounds simple, it turns out that these goals require them to use many advanced Scala features — which they often use all at the same time. As a result, their code can look completely foreign to novice FP developers. As Mr. Alexander writes, “When you first see their code it’s easy to ask, ‘Why would anyone write code like this?’”

Mr. Alexander answers that “Why?” question by explaining the benefits of writing pure functional code. Once you understand those benefits — your motivation for learning FP — he shares five rules for programming in the book:

  • All fields must be immutable (‘val’ fields).
  • All functions must be pure functions.
  • Null values are not allowed.
  • Whenever you use an ‘if’ you must also use an ‘else’.
  • You won’t create OOP classes that encapsulate data and behavior; instead you’ll design data structures using Scala ‘case’ classes, and write pure functions that operate on those data structures.

In the book you’ll see how those five, simple rules naturally lead you to write pure, functional code that reads like algebra. He also shares one more Golden Rule for learning:

  • Always ask “Why”?

Lessons in the book include:

  • How and why to write only pure functions
  • Why pure function signatures are much more important than OOP method signatures
  • Why recursion is a natural tool for functional programming, and how to write recursive algorithms
  • Because the Scala ‘for’ expression is so important to FP, dozens of pages explain the details of how it works
  • In the end you’ll see that monads aren’t that difficult because they’re a natural extension of the Five Rules
  • The book finishes with lessons on FP data modeling, and two main approaches for organizing your pure functions

As Mr. Alexander writes, “In this book I take the time to explain all of the concepts that are used to write FP code in Scala. As I learned from my own experience, once you understand the Five Rules and the small concepts, you can understand Scala/FP.”

Please note that because of the limits on how large a printed book can be, the paperback version does not include all of the chapters that are in the Kindle eBook. The following lessons are not in the paperback version:

  • Grandma’s Cookies (a story about pure functions)
  • The ScalaCheck lessons
  • The Type Classes lessons
  • The appendices

Because those lessons didn’ fit in the print version, they have been made freely available online.

(Alvin Alexander (alvinalexander.com) wrote the popular Scala Cookbook for O’Reilly, and also self-published two other books, How I Sold My Business: A Personal Diary, and A Survival Guide for New Consultants.)

Additional Information

Manufacturer:CreateSpace Independent Publishing Platform
Publisher:CreateSpace Independent Publishing Platform
Studio:CreateSpace Independent Publishing Platform
EAN:9781979788786
Item Size:1.76 x 10 x 10 inches
Package Weight:3.61 pounds
Package Size:7 x 1.76 x 1.76 inches

Functional Programming, Simplified: (Scala Edition) by CreateSpace Independent Publishing Platform

Buy Now:
Functional Programming, Simplified: (Scala Edition)

Brand: CreateSpace Independent Publishing Platform
Condition: New
Lead Time: 1 - 2 Business Days
Availability: In Stock
$34.99


Quantity:  

 


View More In Functional.

 


Have questions about this item, or would like to inquire about a custom or bulk order?


If you have any questions about this product by CreateSpace Independent Publishing Platform, contact us by completing and submitting the form below. If you are looking for a specif part number, please include it with your message.

First Name:
Last Last:
Email Address:
Your Message:

Related Best Sellers


By Pragmatic Bookshelf
ean: 9781680502992, isbn: 1680502999,
This book is the introduction to Elixir for experienced programmers, completely updated for Elixir 1.6 and beyond. Explore functional programming without the academic overtones (tell me about monads just one more time). Create concurrent applications...

By Manning Publications
mpn: black & white illustrations, figures, ean: 9781617291999, isbn: 1617291994,
SummaryJava 8 in Action is a clearly written guide to the new features of Java 8. The book covers lambdas, streams, and functional-style programming. With Java 8's functional features you can now write more concise code in less time, and also automat...

By O'Reilly Media
mpn: 42695641, ean: 9781491927281, isbn: 1491927283,
Rust is a new systems programming language that combines the performance and low-level control of C and C++ with memory safety and thread safety. Rust’s modern, flexible types ensure your program is free of null pointer dereferences, double frees, ...

By Big Nerd Ranch Guides
ean: 9780135161630, isbn: 0135161630,
Kotlin is a statically typed programming language designed to interoperate with Java and fully supported by Google on the Android operating system. Based on Big Nerd Ranch’s popular Kotlin Essentials course, this guide shows you how to work eff...

By Cambridge Scholars Publishing
ean: 9781527503717, isbn: 1527503712,
The amount of digital systems supporting our daily life is increasing continuously. Improved technical facilities for their production have led to growing challenges for engineers and scientists working in the Boolean domain. A Boolean variable can o...

By Brand: Springer
ean: 9780792322290, isbn: 0792322290,
Spline functions entered Approximation Theory as solutions of natural extremal problems. A typical example is the problem of drawing a function curve through given n + k points that has a minimal norm of its k-th derivative. Isolated facts about the ...

By Springer
mpn: 13 black & white illustrations, biograph, ean: 9781475782547, isbn: 1475782543,
This book is meant as a present to honor Professor on the th occasion of his 70 birthday. It collects refereed contributions from sixty-one mathematicians from eleven countries. They cover many different areas of research related to the work of Profe...

By Springer
ean: 9783319392271, isbn: 3319392271,
This book focuses on the approximation of nonlinear equations using iterative methods. Nine contributions are presented on the construction and analysis of these methods, the coverage encompassing convergence, efficiency, robustness, dynamics, and ap...

By Springer
mpn: 1 black & white illustrations, 5 black &, ean: 9783540196099, isbn: 3540196099,
Functional Programming is a relatively new area of computer science. These proceedings contain 25 papers representing an excellent snapshot of the current state of functional programming and are written by the leading computer scientists in this aera...

By Springer
mpn: biography, ean: 9783540401742, isbn: 3540401741,
Because of its promise to support human programmers in developing correct and efficient program code and in reasoning about programs, automatic program synthesis has attracted the attention of researchers and professionals since the 1970s. This book ...



Privacy Policy / Terms of Service
© 2018 - emslinux.com. All Rights Reserved.