Cantitate/Preț
Produs

Pearls of Functional Algorithm Design

Autor Richard Bird
en Limba Engleză Hardback – 15 sep 2010

Ne-a atras atenția modul în care Pearls of Functional Algorithm Design transformă scrierea codului dintr-o activitate empirică într-o disciplină matematică riguroasă. Cartea utilizează limbajul Haskell nu doar ca instrument de implementare, ci ca un cadru formal pentru „design prin calcul”. Această metodă este esențială deoarece permite demonstrarea corectitudinii algoritmului simultan cu dezvoltarea sa, eliminând erorile de logică încă din faza de proiectare.

Structurată în 30 de capitole concise, lucrarea abordează probleme tehnice complexe — de la sarcini combinatorii și jocuri, până la algoritmi de compresie a datelor și string matching. Merită menționat că fiecare „perlă” începe cu o specificație simplă, care este apoi rafinată succesiv prin aplicarea legilor programării funcționale până la obținerea unei soluții performante. Dacă Algorithm Design: A Methodological Approach - 150 problems and detailed solutions de Patrick Bosc v-a oferit cadrul teoretic al familiilor de algoritmi, această carte oferă instrumentele practice de derivare a codului prin raționament ecuațional.

Putem afirma că acest volum reprezintă rafinarea stilului de lucru al lui Richard Bird. În timp ce Thinking Functionally with Haskell se concentrează pe fundamentele limbajului, Pearls of Functional Algorithm Design aplică aceleași principii de rigoare asupra structurilor de date și algoritmilor clasici. Este o resursă tehnică de nivel avansat care schimbă perspectiva asupra eficienței, punând accent pe claritatea expresiei matematice ca motor al performanței software.

Citește tot Restrânge

Preț: 42233 lei

Preț vechi: 52792 lei
-20%

Puncte Express: 633

Carte tipărită la comandă

Livrare economică 15-29 iunie


Specificații

ISBN-13: 9780521513388
ISBN-10: 0521513383
Pagini: 290
Ilustrații: 20 b/w illus.
Dimensiuni: 175 x 246 x 18 mm
Greutate: 0.73 kg
Editura: Cambridge University Press
Colecția Cambridge University Press
Locul publicării:Cambridge, United Kingdom

De ce să citești această carte

Recomandăm această carte programatorilor și studenților care doresc să stăpânească eleganța limbajului Haskell pentru rezolvarea problemelor algoritmice. Cititorul va câștiga o metodologie clară de calculare a algoritmilor, învățând cum să transforme specificații abstracte în cod eficient și corect prin construcție, o abilitate critică în dezvoltarea de software de înaltă siguranță.


Despre autor

Richard Bird este un distins cercetător și profesor la Universitatea Oxford, fiind considerat unul dintre pionierii programării funcționale. Opera sa academică, care include titluri de referință precum Introduction Functional Programming și Algorithm Design with Haskell, este recunoscută pentru claritatea excepțională și rigoarea matematică. Bird a jucat un rol fundamental în dezvoltarea metodelor de derivare a programelor prin calcul. Interesant este faptul că, în afara domeniului informaticii, autorul este un expert recunoscut în horticultură, publicând numeroase lucrări practice despre grădinărit, ceea ce reflectă pasiunea sa pentru structură și ordine, fie că este vorba de algoritmi sau de natură.


Descriere scurtă

Richard Bird takes a radical approach to algorithm design, namely, design by calculation. These 30 short chapters each deal with a particular programming problem drawn from sources as diverse as games and puzzles, intriguing combinatorial tasks, and more familiar areas such as data compression and string matching. Each pearl starts with the statement of the problem expressed using the functional programming language Haskell, a powerful yet succinct language for capturing algorithmic ideas clearly and simply. The novel aspect of the book is that each solution is calculated from an initial formulation of the problem in Haskell by appealing to the laws of functional programming. Pearls of Functional Algorithm Design will appeal to the aspiring functional programmer, students and teachers interested in the principles of algorithm design, and anyone seeking to master the techniques of reasoning about programs in an equational style.

Cuprins

Preface; 1. The smallest free number; 2. A surpassing problem; 3. Improving on saddleback search; 4. A selection problem; 5. Sorting pairwise sums; 6. Making a century; 7. Building a tree with minimum height; 8. Unravelling greedy algorithms; 9. Finding celebrities; 10. Removing duplicates; 11. Not the maximum segment sum; 12. Ranking suffixes; 13. The Burrows–Wheeler transform; 14. The last tail; 15. All the common prefixes; 16. The Boyer–Moore algorithm; 17. The Knuth–Morris–Pratt algorithm; 18. Planning solves the rush hour problem; 19. A simple Sudoku solver; 20. The countdown problem; 21. Hylomorphisms and nexuses; 22. Three ways of computing determinants; 23. Inside the convex hull; 24. Rational arithmetic coding; 25. Integer arithmetic coding; 26. The Schorr–Waite algorithm; 27. Orderly insertion; 28. Loopless functional algorithms; 29. The Johnson–Trotter algorithm; 30. Spider spinning for dummies; Index.

Recenzii

'… well-presented and well-motivated material strives to become a stepping stone to further discovery. Any serious computer scientist would benefit from reading and properly understanding this book.' Computing Reviews
'… an excellent guide into this method of algorithm development.' Journal of Functional Programming