LEADER 04168nam 2200517 450 001 9910798228603321 005 20170919190301.0 010 $a1-78588-205-8 035 $a(CKB)3710000000635291 035 $a(EBL)4520694 035 $a(MiAaPQ)EBC4520694 035 $a(PPN)220203806 035 $a(EXLCZ)993710000000635291 100 $a20160711d2016 uy| 0 101 0 $aeng 135 $aur|n|---||||| 181 $2rdacontent 182 $2rdamedia 183 $2rdacarrier 200 10$aMastering Clojure $eunderstand the philosophy of the Clojure language and dive into its inner workings to unlock its advanced features, methodologies, and constructs /$fAkhil Wali 210 1$aBirmingham :$cPackt Publishing,$d2016. 215 $a1 online resource (267 p.) 225 1 $aCommunity experience distilled 300 $aIncludes index. 311 $a1-78588-974-5 320 $aIncludes bibliographical references and index. 327 $aCover ; Copyright; Credits; About the Author; About the Reviewer; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Working with Sequences and Patterns; Defining recursive functions; Thinking in sequences; Using the seq library; Creating sequences; Transforming sequences; Filtering sequences; Lazy sequences; Using zippers; Working with pattern matching; Summary; Chapter 2: Orchestrating Concurrency and Parallelism; Managing concurrent tasks; Using delays; Using futures and promises; Managing state; Using vars; Using refs; Using atoms; Using agents; Executing tasks in parallel 327 $aControlling parallelism with thread poolsSummary; Chapter 3: Parallelization Using Reducers; Using reduce to transform collections; What's wrong with sequences?; Introducing reducers; Using fold to parallelize collections; Processing data with reducers; Summary; Chapter 4: Metaprogramming with Macros; Understanding the reader; Reading and evaluating code; Quoting and unquoting code; Transforming code; Expanding macros; Creating macros; Encapsulating patterns in macros; Using reader conditionals; Avoiding macros; Summary; Chapter 5: Composing Transducers; Understanding transducers 327 $aProducing results from transducersComparing transducers and reducers; Transducers in action; Managing volatile references; Creating transducers; Summary; Chapter 6: Exploring Category Theory; Demystifying category theory; Using monoids; Using functors; Using applicative functors; Using monads; Summary; Chapter 7: Programming with Logic; Diving into logic programming; Solving logical relations; Combining logical relations; Thinking in logical relations; Solving the n-queens problem; Solving a Sudoku puzzle; Summary; Chapter 8: Leveraging Asynchronous Tasks; Using channels; Customizing channels 327 $aConnecting channelsRevisiting the dining philosophers problem; Using actors; Creating actors; Passing messages between actors; Handling errors with actors; Managing state with actors; Comparing processes and actors; Summary; Chapter 9: Reactive Programming; Reactive programming with fibers and dataflow variables; Using Reactive Extensions; Using functional reactive programming; Building reactive user interfaces; Introducing Om; Summary; Chapter 10: Testing Your Code; Writing tests; Defining unit tests; Using top-down testing; Testing with specs; Generative testing; Testing with types; Summary 327 $aChapter 11: Troubleshooting and Best PracticesDebugging your code; Using tracing; Using Spyscope; Logging errors in your application; Thinking in Clojure; Summary; Appendix: References; Index 410 0$aCommunity experience distilled. 606 $aClojure (Computer program language) 606 $aSocial networks$xMathematical models 606 $aGeographic information systems 615 0$aClojure (Computer program language) 615 0$aSocial networks$xMathematical models. 615 0$aGeographic information systems. 700 $aWali$b Akhil$01466207 801 0$bMiAaPQ 801 1$bMiAaPQ 801 2$bMiAaPQ 906 $aBOOK 912 $a9910798228603321 996 $aMastering Clojure$93676563 997 $aUNINA