Functional programming languages like F#, Erlang, and Scala are attracting attention as an efficient way to handle the new requirements for programming multi-processor and high-availability applications. Microsoft's new F# is a true functional language and C# uses functional language features for LINQ and other recent advances.
Real-World Functional Programming is a unique tutorial that explores the functional programming model through the F# and C# languages. The clearly presented ideas and examples teach readers how functional programming differs from other approaches. It explains how ideas look in F#-a functional language-as well as how they can be successfully used to solve programming problems in C#. Readers build on what they know about .NET and learn where a functional approach makes the most sense and how to apply it effectively in those cases.
The reader should have a good working knowledge of C#. No prior exposure to F# or functional programming is required.
Purchase of the print book comes with an offer of a free PDF, ePub, and Kindle eBook from Manning. Also available is all code from the book.
Brand: Manning Publications
Used Book in Good Condition
Most Helpful Customer Reviews
A hallmark of this book is a very pragmatic, Rosetta stone approach to F#.
Since F# lives in .Net, and .Net is inherently object-oriented; it makes sense to understand something of the mapping that takes place behind the scenes when F# code is mapped into the .Net world.
Many of the interesting new features introduced into C# are actually hand-me-downs from FP (functional programming). This includes generics, LINQ, anonymous methods, lambdas, type inference, etc.. Since many programmers need to use C# in the work-a-day world, it makes sense to understand the functional elements of C# by seeing them in a functional language like F#, where they can be seen in their purest (least hobbled) state. Once these concepts are understood, it is then much easier to understand how to wield these tools effectively in C#.
That said, there are also limits to how much functional programming can be done in C# (and how effectively it can be accomplished). This book...
The core content is fairly good, but it is ruined by the exposition: the same concepts are repeated multiple times in different places (e.g. fold operation, immutable data structures), and there is a ton of redundant verbiage (I don't know how else to call it) that obscures the actual information and makes the reading a slog.
An example of what I mean by 'verbiage' - on page 156:
....Let's now analyze how it works in some more detail.
6.4.3 Evaluating the example step by step It can take some time to become confident with high-order functions like these, especially when they are nested. We're going to examine how the code from the previous listing by tracing how it runs for a few sample inputs. Moving from the abstract question "What does this code do in the general case?" to the concrete question of "What does this code do in this particular situation?" can often help to clarify matter
I usually don't like tutorial-style books, but am finding this one invaluable. More than the other F# titles to date, it explores at length what makes functional programming different, and what this means in a .NET context. A unique feature is the running comparison of F# with both traditional and "functional style" C#. Code listings are nicely labeled with arrows pointing out important details. The book is not intended as a language reference, and only lightly touches on the imperative and object-oriented sides of F#, or contents of standard .NET libraries, but this allows a more leisurely and thorough treatment of the distinctively functional concepts and their implications for program design. Highly recommended.
The authorised South African distributor of this product is under no obligation to honour the manufacture's guarantees/warranties or to provide after-sales service.
Please note that this item is imported from the USA, and is designed to be used in the USA. In addition, if the unit is powered it will come with a US plug and an adapter/transformer may be required. Please click here for more information on power requirements, or check with us if you are unsure or need any assistance!
Please also note that certain items cannot be imported, these include Alcohol, Animals, Batteries, Flammable Materials, Currency, Food, Furs, Chemicals, Explosives, Medications, Plants, Seeds, Supplements, Pressurized Cans, Tactical Equipment, Vitamins, Weaponry and Weaponry Accessories. In these cases, the item and information is displayed for reference purposes only. If you are not sure if we are permitted to bring an item, please send us an e-mail with a link to the item to confirm.
Please also ensure that you are ordering the correct item for your particular application as returns to the USA are costly. Product reviews are also provided for most of our items, which can give you a good idea for possible things to look out for and the quality of the item. By clicking Add to Cart, you are confirming that the item is correct and you accept the conditions listed here.