Pdf/E–book [Programming Erlang Software for a Concurrent World] ↠ Joe Armstrong

Berlioz and the Romantic Century gUmor uite a uniue personality His solutions are always very simple and beautiful The last third of the bookets dense but that s also because I stopped putting things in practice toward the end I really wanted to write a lovely review of this not just because it s a prag prog book but also because I like the values espoused by the Erlang community I had hoped for a tour de force from the language s creator but instead I ot a book I skimmed the last hundred pages ofSo what s wrong with it Half a dozen things but the crucial thing is that the focus of the book wanes as the book progresses In the early chapters there s a real feeling of purpose but by the end you almost feel despondent as the author tries to motivate himself and you to try the best parts of the platform The chapter on OTP is a classic example of the malaise we et started with a simple server and as a reader you wait for the juicy details of how and why Instead you Canadian Art, Volume 1 (A-F): Canadian Art: Volume I (A-F) get a kind of here s some nowo play with it yourself statementIt should be noted that I didn t like the language much either and later chapters were tarnished by how annoyed I was by other things such as Erlang s string handling So there may be some chicken and egg effect thereOverall I d look to other books for the Erlang magic Erlang is an amazing programming language This book is not the best if you re learning functional or parallel programming you should know both paradigms before reading this book also you should have programmed many funcionalities in JavaNET or any other so complete language but it s handy if you re learning Erlang or modular programming It s easy to et stuck so take your time reading it It was a while since I wrote my first post The reason is that I m reading books parallel and it takes time to finish one in 100% Although I m digging trough some interesting materials since October which surely deserve mentioning here the book I want to write about today hijacked my time pritty well last month making me read it from the cover to cover in no timeSo here it oes another book from the Pragmatic Bookshelf Programming Erlang Software for a Concurrent World by Joe Armstrong I must admit that it is another position from this publisher that I ve fallen in love with right away so expect only kind words from this articleSo what areas does the book cover Basically the fallowingErlang as the languageConcepts OF THE FUNCTIONAL PROGRAMMINGCONCURRENT PROGRAMMING USING THE ERLANG ACTOR the functional programmingConcurrent programming using the Erlang Actor of interesting and sophisticated Erlang librariesIn contrary to the first book I wrote about Programming Erlang is rather long as it contains total of 519 pages That number can be intimidating Personally I m scared of books longer than 250 pages That was not the case hereFortunately after reading through the Contents my fears has one away Introducing 250 pages That was not the case hereFortunately after reading through the Contents my fears has one away Introducing takes no than 150 pages Additionally it s really well illustrated with real life examples so both new language and concepts of the functional programming comes in natural and pleasant process Additionally code you are Bulletproof Feathers guided trough and which you will write fallowing the book touches undoubtedly interesting subjects like diagnosing mpg file reading tags from mp3 file streaming multimedia content via web or implementing simple concurrent communicatorSo if that s all what s on the next 370 pages you may ask More knowledge I answer But to be precise there are two subjects covered in rest of the book serious concurrent Erlang programming and tools for serious concurrent Erlang programming Knowing new language is one other knowing how to use it to benefit from all its possibilities is the other After learning you a newreat functional language Joe Armstrong takes you to a trip through newest concurrent programming approaches and techniues illustrated with even interesting real world examplesOf course there is not book That Will Make You A will make you a in new language in two weeks and no one should have any doubts on that What Programming Erlang Carson Pirie Scott: Louis Sullivan and the Chicago Department Store gives you is a wide entry into the Erlang world and preparing you to use it in your serious projects right away All you need is a little bitoggling and coding coding and codin. His book presents Erlang and functional programming in the familiar Pragmatic style And it's written by Joe Armstrong one of the creators of ErlangIt includes example code you'll be able to build upon In addition the book contains the full source code for two interesting applicationsA SHOUTcast server which you can use to stream music to every computer in your house and a full text indexing and search engine that can index igabytes of data Learn how to write programs that run on dozens or even hundreds of local and remote processors See how to write robust applications that run even in the face of network and hardware failure using the Erlang programming langua. ,
H a period semicolon or comma By the time you re done *With The Book You *the book you have figured all of this out But I never came across a section describing the language syntax5 Much of the text of the book is Armstrong tooting Erlang s horn I m lad he likes it but most of that should have been trimmed from the book6 There are a few errors in the source This is always painful in a programming book 7 Between the illogical structure of the book and the painfully unhelpful error messages from Erlang itself Chameleon Hours getting through the thing can be a painful exercise8 Thankfully I ve already made a study of functional programming ie immutable data lambda etc I think this book would be a challenging introduction to the subject as it does not spend much time explaining the theory and practicePros1 Armstrong really seems to enjoy showing off Erlang s features The enthusiasm is nice2 There are someood examples in the book3 By the time you re done you ll feel like you have a pretty ood rasp of the language4 The language itself has a number of very interesting conceptual features The book does do a ood job of presenting what is advantageous and uniue about ErlangIn all it s a decent book completely crippled by a complete lack of a ood book editor Since there is now an O Reilly book called Erlang Programming I good book editor Since there is now an O Reilly book called Erlang Programming I suggest taking a look at it instead O Reilly has Citrus: A History good editorsStrangely I ve noticed a propensity for Erlang supporters to confuse criticism of this book with criticism of Erlang or even of functional programming ineneral itself Please do not make that confusion here An adeuate introduction to the language Erlang is an important language and it has enough unfamiliar elements to make it difficult to pick up without a Building the South Side: Urban Space and Civic Culture in Chicago, 1890-1919 guide This book deserves credit for being a clear approachable introduction to the syntax and core ideas of Erlang However he does noto as deep as I had hoped His description of the language itself is thorough but the chapters on OTP were relatively thin and I am left with a number of uestions about how to build and tune actual production systems with the Erlang toolset He also doesn t et any extra points for style I would recommend looking at the other Erlang books that are available It is an excellent book I strongly advise anyone that wants to dive into Erlang to read this book It is well structured and covers the topics in an consise and joyful manner I especially like how it keeps it real with references to real world cases Personally it makes me feel like I am taking a stroll down the rabbit hole into the wonders of the Erlang world Perhaps the most challenging part of software engineering is striving to build something that is simple Simplicity to me means something that you can fully rasp intuitively ignoring the irrelevant And then use it to enrich your language and build on top of it This is also the premise of OOP but for many reasons it s easy to et bogged down with classesmethods that end up doing too much My novice understanding of Erlang is that Erlang uides you forcefully to a path that avoids certain traps You have pure functions with no side effects You declare and match not assign and update You use recursions not loops which again is tied to the former point and also makes you think at what than how You feel at home dealing with concurrency which let s face it it s the origin of a ton of issues and the related hacks to deal with it Erlang has a thing for terseness too not just syntactically but importantly architecturally large functions or modules end up being somewhat unusual Or so it seems to me All of this informs the programmer almost immediately if they re doing it the Erlang way or notIn other words I feel like OOP is easier to work with but ErlangFP is simpler Maybe if I didn t learn OOP first I d think differentlyJoe Armstrong recently passed and it s sad to see such a master o His book is sort of the euivalent of the KR s C Language I love how he explains everything tersely ok sometimes a bit too much and with precision respectful of your intelligence His style is leading by example and he encourages you to try things out as you read He also adds his own nerdy Code is slowErlang is a programming language out as you read He also adds his own nerdy Code is slowErlang is a programming language for building highly parallel distributed fault tolerant systems It has been used commercially for many years to build massive fault tolerated systems that run for years with minimal failuresErlang programs run seamlessly on multi core computers this means your Erlang program should run a lot faster on a 4 core processor than on a single core processor all without you having to change a line of codeErlang combines ideas from the world of functional programming with techniues for building fault tolerant systems to make a powerful language for building the massively parallel networked applications of the futureT. Programming Erlang Software for a Concurrent WorldThis is the definitive book on Erlang written by Joe Armstrong the creator of the Erlang language The book is clearly written with lots of small examples and paced for the beginning Erlang programmerErlang takes a little etting used to It is a functional language meaning that functions in eneral are unable to cause side effects For example variables are in one 2 states their initial state is unbound their final state is has some value that can never change to place a value into a variable that already has a has some value that can never change Attempting to place a value into a variable that already has a causes an exception This aspect of functional programming makes it possible to write multi threadedmulti process applications without the problems inherent in multi threaded applications in non functional languagesThe basic data types in Erlang are functions atoms numbers lists tuples and strings which are actually lists of integer numbers List manipulation in Erlang is similar to that in Lisp lists are enerally treated as a head and tail This is used by the Erlang way of defining functions functions are defined as a set of pattern matched expressions with code associated with each expression For example a simple accumulator in Erlang might look as followstotalH T H totalT total 0 total110205 36This just says that to sum the values in a list you add the value of the head of the list to the sum of the values in the tail and that the sum of an empty list is zeroFunctions lambdas really or funs as they are called in Erlang are first class objects in Erlang meaning that they can be members of tuples and lists can be passed as parameters to functions and can be returned as a value by functions So for exampleDouble funX 2 X endDouble5 10Erlang was designed from the beginning to make it easy to write concurrent programs Erlang process creation is very efficient and there is no Common People: The History of An English Family great difference between running such a program as many threads on one box or many processes on multiple boxes A new process is created with the spawn function which takes a fun a lambda as a paramter The spawn function returns the process id pid of the new process which may then be used to communicate with that process The book shows a couple simple examples of distributed programming by way of illustration a simple name server and a stripped down IRC server and clientThe book continues with details on how to interface C and Erlang software how to communicate over TCP and UDP the Erlang large data storage mechanisms ETS an DETS and the Erlang database mnesiaThere is a nice example of implementing map reduce for disk indexing with Erlang on a multicore systemFinally there are a number of appendices including a large reference listing of the standard Erlang modules and functions This is areat book As others have mentioned before it is a bit chaotic at times with understanding coming only after reading future chapters and with a few mistakes here and there but this is made up for by the depth of the material and the positive energy of the author present on every page If you can Citizens and Paupers: Relief, Rights, and Race, from the Freedmen's Bureau to Workfare get through the tough parts you ll be rewarded by areat explanation of how to build reliable systems based on immutable datastructures and message passing Excellent book The first book you should read if you are learning Erlang The explanation is very clear without dumbing down the details A classic book like KR C but for functional and concurrent programming A book with big cons and big pros I think it will be easiest if I simply list the cons and the pros Let s start with the cons all of which I attribute to editors asleep at the wheel or on crack1 The book is laid out in a reader hostile manner topics are introduced completely out of order You ll be skipping around a lot to find in depth answers for anything2 The index is worthless You re rolling the dice when you try to find a particular topic Chances are ood it s not in the index3 Many important items are in a 20 page section entitled 54 Miscellaneous Short Topics All of these topics could have been properly placed in appropriately titled sections elsewhere in the Book4 The Syntax Of The Language Is The syntax of the language is random to a newcomer You never know if a line will need to end wit. Erlang solves one of the most pressing problems facing developers today how to write reliable concurrent high performance systems It's used worldwide by companies who need to produce reliable efficient and scalable applications Invest in learning Erlang nowMoore's Law is the observation that the amount you can do on a single chip doubles every two years But Moore's Law is taking a detour Rather than producing faster and faster processors companies such as Intel and AMD are producing multi core devices single chips containing two four or processors If your programs aren't concurrent they'll only run on a single processor at a time Your users will think that your.

Review ↠ PDF, DOC, TXT, eBook or Kindle ePUB free ☆ Joe Armstrong