Cargando…

Clojure high performance programming : understand performance aspects and write high performance code with Clojure /

This is a short, practical guide that will teach you everything you need to know to start writing high performance Clojure code. This book is ideal for intermediate Clojure developers who are looking to get a good grip on how to achieve optimum performance. You should already have some experience wi...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Kumar, Shantanu
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Birmingham : Packt Publishing, 2013.
Colección:Community experience distilled.
Temas:
Acceso en línea:Texto completo

MARC

LEADER 00000cam a2200000 i 4500
001 EBSCO_ocn863824720
003 OCoLC
005 20231017213018.0
006 m o d
007 cr |n|||||||||
008 131123s2013 enk o 001 0 eng d
040 |a EBLCP  |b eng  |e pn  |c EBLCP  |d IDEBK  |d YDXCP  |d E7B  |d UMI  |d OCLCQ  |d COO  |d OCLCO  |d DEBBG  |d DEBSZ  |d OCLCQ  |d OCLCF  |d KNOVL  |d OCLCQ  |d FEM  |d COCUF  |d CNNOR  |d MOR  |d PIFAG  |d N$T  |d ZCU  |d AGLDB  |d MERUC  |d OCLCQ  |d D6H  |d OCLCQ  |d VTS  |d ICG  |d OCLCQ  |d STF  |d DKC  |d OCLCQ  |d AJS  |d OCLCQ  |d UKMGB  |d OCLCQ  |d OCLCO  |d OCLCQ  |d OCLCO 
015 |a GBC1H5206  |2 bnb 
016 7 |a 018005359  |2 Uk 
019 |a 869567484  |a 961589788  |a 968016033  |a 969055840 
020 |a 9781680154177  |q (electronic bk.) 
020 |a 1680154176  |q (electronic bk.) 
020 |a 9781782165613  |q (electronic bk.) 
020 |a 1782165614  |q (electronic bk.) 
020 |z 1782165606 
020 |z 9781782165606 
029 1 |a CHNEW  |b 000635801 
029 1 |a CHNEW  |b 000899427 
029 1 |a CHVBK  |b 40339290X 
029 1 |a DEBBG  |b BV041778607 
029 1 |a DEBBG  |b BV044064914 
029 1 |a DEBSZ  |b 404330991 
029 1 |a DEBSZ  |b 405527659 
029 1 |a DEBSZ  |b 49313333X 
029 1 |a UKMGB  |b 018005359 
035 |a (OCoLC)863824720  |z (OCoLC)869567484  |z (OCoLC)961589788  |z (OCoLC)968016033  |z (OCoLC)969055840 
037 |a CL0500000370  |b Safari Books Online 
050 4 |a QA76.73.C565 
050 4 |a QA76.73.J38 .K384 2013 
072 7 |a COM  |x 051010  |2 bisacsh 
082 0 4 |a 005.13/3  |2 23 
082 0 4 |a 005.46 
049 |a UAMI 
100 1 |a Kumar, Shantanu. 
245 1 0 |a Clojure high performance programming :  |b understand performance aspects and write high performance code with Clojure /  |c Shantanu Kumar. 
260 |a Birmingham :  |b Packt Publishing,  |c 2013. 
300 |a 1 online resource (152 pages) 
336 |a text  |b txt  |2 rdacontent 
337 |a computer  |b c  |2 rdamedia 
338 |a online resource  |b cr  |2 rdacarrier 
347 |a text file 
490 1 |a Community experience distilled 
505 0 |a Cover; Copyright; Credits; About the Author; Acknowledgments; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1:Performance by Design; Use-case classification; User facing software; Computational and data-processing tasks; CPU bound; Memory bound; Cache bound; Input/Output (I/O) bound; Online transaction processing (OLTP); Online analytical processing (OLAP); Batch processing; Structured approach to performance; Performance vocabulary; Latency; Throughput; Bandwidth; Baseline and benchmark; Profiling; Performance optimization; Concurrency and parallelism. 
505 8 |a Resource utilizationWorkload; Latency numbers every programmer should know; Summary; Chapter 2:Clojure Abstractions; Non-numeric scalars and interning; Identity, value, and epochal time model; Variables and mutation; Collection types; Persistent data structures; Constructing less-used data structures; Complexity guarantee; Concatenation of persistent data structures; Sequences and laziness; Laziness; Laziness in data structure operations; Constructing lazy sequences; Transients; Fast repetition; Performance miscellanea; Disabling assertions in production; Destructuring. 
505 8 |a Recursion and tail-call optimization (TCO)Premature end in reduce; Multimethods versus protocols; Inlining; Summary; Chapter 3:Leaning on Java; Inspect the equivalent Java source for Clojure code; Create a new project; Compile Clojure sources into Java bytecode; Decompile the .class files into Java source; Numerics, boxing, and primitives; Arrays; Reflection and type hints; Array of primitives; Primitives; Macros and metadata; Miscellaneous; Using array/numeric libraries for efficiency; HipHip; primitive-math; Resorting to Java and native code; Proteus -- mutable locals in Clojure; Summary. 
505 8 |a Chapter 4:Host PerformanceThe hardware; Processors; Branch prediction; Instruction scheduling; Threads and cores; Memory systems; Cache; Interconnect; Storage and networking; The Java Virtual Machine; The just-in-time (JIT) compiler; Memory organization; HotSpot heap and garbage collection; Measuring memory (heap/stack) usage; Measuring latency with Criterium; Criterium and Leiningen; Summary; Chapter 5:Concurrency; Low-level concurrency; Hardware memory barrier instructions; Java support and its Clojure equivalent; Atomic updates and state; Atomic updates in Java. 
505 8 |a Clojure's support for atomic updatesAsynchronous agents and state; Asynchrony, queuing, and error handling; Why use agents?; Nesting; Coordinated transactional ref and state; Ref characteristics; Ref history and in-transaction deref operations; Transaction retries and barging; Upping transaction consistency with ensure; Fewer transaction retries with commutative operations; Agents can participate in transactions; Nested transactions; Performance considerations; Dynamic var binding and state; Validating and watching the reference types; Java concurrent data structures; Concurrent maps. 
520 |a This is a short, practical guide that will teach you everything you need to know to start writing high performance Clojure code. This book is ideal for intermediate Clojure developers who are looking to get a good grip on how to achieve optimum performance. You should already have some experience with Clojure and it would help if you already know a little bit of Java. Knowledge of performance analysis and engineering is not required. For hands-on practice, you should have access to Clojure REPL with Leiningen. 
500 |a Includes index. 
588 0 |a Print version record. 
590 |a eBooks on EBSCOhost  |b EBSCO eBook Subscription Academic Collection - Worldwide 
650 0 |a Application software  |x Development. 
650 0 |a Clojure (Computer program language) 
650 0 |a Computer programming. 
650 6 |a Logiciels d'application  |x Développement. 
650 6 |a Clojure (Langage de programmation) 
650 6 |a Programmation (Informatique) 
650 7 |a computer programming.  |2 aat 
650 7 |a COMPUTERS  |x Programming Languages  |x General.  |2 bisacsh 
650 7 |a Application software  |x Development  |2 fast 
650 7 |a Clojure (Computer program language)  |2 fast 
650 7 |a Computer programming  |2 fast 
776 0 8 |i Print version:  |a Kumar, Shantanu.  |t Clojure High Performance Programming.  |d Birmingham : Packt Publishing, ©2013  |z 9781782165606 
830 0 |a Community experience distilled. 
856 4 0 |u https://ebsco.uam.elogim.com/login.aspx?direct=true&scope=site&db=nlebk&AN=666223  |z Texto completo 
938 |a ebrary  |b EBRY  |n ebr10809465 
938 |a EBSCOhost  |b EBSC  |n 666223 
938 |a ProQuest MyiLibrary Digital eBook Collection  |b IDEB  |n cis26803913 
938 |a YBP Library Services  |b YANK  |n 11377151 
994 |a 92  |b IZTAP