31 von 33 Kunden fanden die folgende Rezension hilfreich
Let's Compare Options Preptorial
- Veröffentlicht auf Amazon.com
Format: Kindle Edition
Beginners in OCaml will probably want to peruse Whitington first-- OCaml from the Very Beginning before buying this wonderful text. The format is a fast paced "tutorial" covering all the major, including advanced, functions of OCaml. I'm an old Lisp and current Haskell programmer, and this book really opened my eyes about OCaml beyond academia. Google's using it for systems, big data and domain projects. One of the authors uses it as the main engine for a trading platform. In short, this fascinating hybrid is finding many more applications beyond software engineering education. And like other functionals, its math abilities are awesome.
The text has O'reilly's quality and the code, even for a brand new work, is nearly flawless. I was frankly unfamiliar with Core, the largest OCaml library, which is why I have preferred the Haskell community, APIs, libraries and SDKs for a long time. No longer! I'm a functional programmer at heart, but to survive today you have to pick up Java, C#, Python, etc. Amazingly (to me, you probably knew this), OCaml has a very cool "imperative" engine in addition to its native functional design. The authors get right into opening Core first as if you were laying an SDK or IDE foundation with that library-- meaning you don't have to spend hours on the web before trying the hundreds of examples.
The "dual nature" or hybrid (imperative and functional) also means you can pick a seminal topic like recursion, for example, and build a loop function just like you would in Haskell. OR, in addition to native functional recursion, you can also use an imperative loop structure such as FOR or WHILE. I compared a FOR imperative with a Sudoku solving functional recursion loop I use all the time (# let rec find _first_stutter list= etc.), and the imperative beat the functional by almost 10 seconds for a very difficult trial. This is amazing not due to my poor functional skills, but due to the fact that my functional skills far outweigh imperative-- OC is a lot more fogiving than I imagined even in imperative!
Very honestly if a young student was interested in functional, I'd recommend Haskell due mostly to the online community and many fine and growing libraries. This awesome gem of a text changes my mind about that. In nearly 500 pages, the authors convincingly show real world example after example-- including MANY from standard coding interviews-- that prove OC is all grown up far beyond Domain Specific Language and academic applications. Big data is now trending heavy stats too, and OC makes R unnecessary due to its many native calc abilities. I've also heard that Amazon is using it in new Web x.o apps, and if I click on Amazon Pizza, and my doorbell rings 10 seconds later, OCaml will now be on my suspect list after reading this text.
The book is a true triple threat, as a reference, teaching guide/text, and especially as an autodidactic self tutorial even for those with basic beginning skills. OC even has its own parsing generators (akin to lex/yacc/bison etc.) that are smoking even if you don't write compilers, but deal a lot with strings and lists. I've read that big data folk all over the industry (including Facebook and Twitter) are using OC more and more, and this fine text taught me why.
I got both the print and Kindle versions and prefer the print. Kindle isn't as badly slaughtered in code examples (real, not just pseudo) as some e readers, but function arguments in this language are more like UNIX than C#, and spacing matters, so consider that if you're planning on using the kindle code as written. Of course O'reilly is renowned for web support and virtually all the examples are online without the onerous "don't ever use this" statements of a lot of publishers. Highly recommended as a second text after Whitington if you're new to functional, or a first text if you're at least intermediate at Haskell or an imperative, and are ready to explore a really cool new alternative.
JOB TIP: Since so many tasty companies are getting into this now, I'm thinking you might be able to distinguish yourself as a programming candidate if you learn this language, separating you from the herd! I'm not thinking many folk have figured this out yet, so go for it, and God love you! I'm too old to look through that lens, but hope it helps some of you young geniuses.