Showing posts with label fsharp. Show all posts
Showing posts with label fsharp. Show all posts

Real World Functional Programming: With Examples in F# and C# Review

Real World Functional Programming: With Examples in F# and C#
Average Reviews:

(More customer reviews)
Are you looking to buy Real World Functional Programming: With Examples in F# and C#? Here is the right place to find the great deals. we can offer discounts of up to 90% on Real World Functional Programming: With Examples in F# and C#. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Real World Functional Programming: With Examples in F# and C# ReviewA 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 clearly demarcates the boundaries of what is (and isn't) feasible in C# vis-à-vis functional programming.
One of the things I liked best about this book is the discussion on why functional programming makes code easier to read, write, and verify. This discussion does not appeal to what might be (for many) inaccessible theory (i.e. denotational semantics, category theory, etc.). Instead it is demonstrated in amazingly simple, straightforward ways! This discussion is very effective.
Another facet of this book's approach that I applaud is the demonstration of lambda calculus. Why would a practical book dabble in theory? There's actually a very pragmatic payoff in doing this: functional programming has a lot of underpinnings in lambda calculus. Those that have been exposed to lambda calculus will feel right at home in F#. Those that haven't are likely to feel more "culture shock" when being exposed to concepts like currying and lazy evaluation. Functional programming really does represent a substantially different way of thinking about computation.
This book also features an excellent discussion about design patterns; comparing and contrasting how they are implemented in OOP (object-oriented programming) versus FP. Some classic design patterns in OOP essentially comes for free in FP (e.g. the "visitor" pattern).Real World Functional Programming: With Examples in F# and C# Overview

Want to learn more information about Real World Functional Programming: With Examples in F# and C#?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Functional Programming in C#: Classic Programming Techniques for Modern Projects (Wrox Programmer to Programmer) Review

Functional Programming in C#: Classic Programming Techniques for Modern Projects (Wrox Programmer to Programmer)
Average Reviews:

(More customer reviews)
Are you looking to buy Functional Programming in C#: Classic Programming Techniques for Modern Projects (Wrox Programmer to Programmer)? Here is the right place to find the great deals. we can offer discounts of up to 90% on Functional Programming in C#: Classic Programming Techniques for Modern Projects (Wrox Programmer to Programmer). Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Functional Programming in C#: Classic Programming Techniques for Modern Projects (Wrox Programmer to Programmer) ReviewThe author has done a tremendous job is picking out the key areas where functional programming suits well in C# programming, I liked the chapters on generics, iterators, closures. could have been better with a more organised flow and more practical examples, but reading this along with "C# in Depth" by Jon Skeet makes you a better programmer.Functional Programming in C#: Classic Programming Techniques for Modern Projects (Wrox Programmer to Programmer) Overview

Want to learn more information about Functional Programming in C#: Classic Programming Techniques for Modern Projects (Wrox Programmer to Programmer)?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Expert F# (Expert's Voice in .NET) Review

Expert F# (Expert's Voice in .NET)
Average Reviews:

(More customer reviews)
Are you looking to buy Expert F# (Expert's Voice in .NET)? Here is the right place to find the great deals. we can offer discounts of up to 90% on Expert F# (Expert's Voice in .NET). Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Expert F# (Expert's Voice in .NET) ReviewThe Good
- Practical.
- High example density.
- Broad coverage of a lot of practical F# topics.
- Good depth on all the important practical stuff.
- I felt like I learned a lot, not only about F#, but about some cool C# features too.
- I felt like I'd be a lot more productive as a programmer if I could master the language.
The (not so) Bad
- Structurally, I initially got lost with some of the more complex examples. And it was straining to page back and forth re-reading things until I grasped the concepts. The density of information in the text sometimes makes it less valuable as a teaching aid and more valuable as a reference.
The (not so) Ugly
- I could not get one of the async examples to actually compile. I had to search the web for some hints to add declarations that seem to have been omitted from either the example code or F# implementation itself. In short, the example code, my development environment, F# itself, of some combination thereof was missing what appears to be an extension method for WebRequest.GetResponseAsync. I had to code it myself. But once I did, it worked! (This might not be a criticism of the book.)Expert F# (Expert's Voice in .NET) Overview

Want to learn more information about Expert F# (Expert's Voice in .NET)?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide) Review

Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide)
Average Reviews:

(More customer reviews)
Are you looking to buy Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide)? Here is the right place to find the great deals. we can offer discounts of up to 90% on Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide). Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide) ReviewAs of Nov 2009, this is probably the easiest book out there on F#. Chris Smith doesn't approach the book assuming prior functional programming knowledge. He avoids getting overly complicated or using difficult terms. There was no point in the book where my eyes glossed over because it got too hard to follow.
The book is split into two parts. The first part is a mainly a run through all of the F# syntax, getting you setup and writing F# code quite quickly. Even though I've been using F# for a couple of years, I still picked up a few new things. It's a book you can use as a reference for parts of the language, even though the actual product documentation is coming together. Of note is the section on lists, which I found particularly clear and easy to follow.
The second part of the book is where Mr. Smith takes it up a notch. The book says it's "applied" F# programming, which in many programming books means the author is about to go over some common APIs for you. Not so in this book. The second part shows some of the very powerful and practical things you can do with F#. The introduction to workflows (computation expressions) was excellent; I don't believe I've seen an easier-to-understand explanation for those who haven't dealt with such constructs before (and there's no use of the dreaded word "monad"!).
What really surprised me was that this book follows up on workflows with a great section on quotations. Not only does it give an overview of what they are, but it provides enough depth so that you can actually start processing and manipulating quotations right away.
Even the appendix is worth reading, as there's a part on F# interop. While F# runs on the CLR, there are certain constructs in F# that won't necessarily look pretty in C#. The appendix goes over how to avoid those problems and make clean ".NET-friendly" APIs.
Overall, I'm quite content with the book. It's a good purchase, even for an experienced F# user. If you're trying to learn F#, and don't have a functional background, this is the book to start with.
As a note, the content doesn't overlap excessively with "Functional Programming for the Real World". So if you're considering both, you won't be disappointed. They're actually so complementary, I'm not sure which one is better if you can only get one.Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide) Overview

Want to learn more information about Programming F#: A comprehensive guide for writing simple code to solve complex problems (Animal Guide)?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...