Clojure high performance programming - Info and Reading Options
become an expert at writing fast and high performant code in Clojure 1.7.0
By Shantanu Kumar

"Clojure high performance programming" was published by Packt Publishing in 2015 - Birmingham, UK, it has 198 pages and the language of the book is English.
“Clojure high performance programming” Metadata:
- Title: ➤ Clojure high performance programming
- Author: Shantanu Kumar
- Language: English
- Number of Pages: 198
- Publisher: Packt Publishing
- Publish Date: 2015
- Publish Location: Birmingham, UK
“Clojure high performance programming” Subjects and Themes:
- Subjects: ➤ Clojure (Computer program language) - Java virtual machine - Programming languages (electronic computers) - Application software - Development - Computer programming
Edition Specifications:
- Pagination: 1 online resource (1 volume)
Edition Identifiers:
- The Open Library ID: OL35366651M - OL26211678W
- Online Computer Library Center (OCLC) ID: 926046090
- ISBN-13: 9781785287671 - 9781785283642
- ISBN-10: 1785287672 - 1785283642
- All ISBNs: 1785287672 - 1785283642 - 9781785287671 - 9781785283642
AI-generated Review of “Clojure high performance programming”:
"Clojure high performance programming" Table Of Contents:
- 1- Cover; Copyright; Credits; About the Author; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Performance by Design; Use case classification; The user-facing software; Computational and data-processing tasks; A CPU bound computation; A memory bound task; A cache bound task; An input/output bound task; Online transaction processing; Online analytical processing; Batch processing; A structured approach to the performance; The performance vocabulary; Latency; Throughput; Bandwidth; Baseline and benchmark; Profiling; Performance optimization
- 2- Concurrency and parallelismResource utilization; Workload; The latency numbers that 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 lesser-used data structures; Complexity guarantee; O(<7) implies near constant time; The concatenation of persistent data structures; Sequences and laziness; Laziness; Laziness in data structure operations; Constructing lazy sequences; Transducers; Performance characteristics
- 3- TransientsFast repetition; Performance miscellanea; Disabling assertions in production; Destructuring; Recursion and tail-call optimization (TCO); Premature end of iteration; Multimethods versus protocols; Inlining; Summary; Chapter 3: Leaning on Java; Inspecting the equivalent Java source for Clojure code; Creating a new project; Compiling the Clojure sources into Java bytecode; Decompiling the .class files into Java source; Compiling the Clojure source without locals clearing; Numerics, boxing, and primitives; Arrays; Reflection and type hints; An array of primitives; Primitives
- 4- Macros and metadataString concatenation; Miscellaneous; Using array/numeric libraries for efficiency; HipHip; primitive-math; Detecting boxed math; Resorting to Java and native code; Proteus
- 5- mutable locals in Clojure; Summary; Chapter 4: Host Performance; The hardware; Processors; Branch prediction; Instruction scheduling; Threads and cores; Memory systems; Cache; Interconnect; Storage and networking; The Java Virtual Machine; The just-in-time compiler; Memory organization; HotSpot heap and garbage collection; Measuring memory (heap/stack) usage; Determining program workload type
- 6- Tackling memory inefficiencyMeasuring latency with Criterium; Criterium and Leiningen; Summary; Chapter 5: Concurrency; Low-level concurrency; Hardware memory barrier (fence) instructions; Java support and the Clojure equivalent; Atomic updates and state; Atomic updates in Java; Clojure's support for atomic updates; Faster writes with atom striping; Asynchronous agents and state; Asynchrony, queueing, and error handling; Why you should use agents; Nesting; Coordinated transactional ref and state; Ref characteristics; Ref history and in-transaction deref operations
"Clojure high performance programming" Description:
Open Data:
About This Book - Learn efficient C++ network programming with minimum coding using Boost.Asio - Your one-stop destination to everything related to the Boost.Asio library - Explore the fundamentals of networking to choose designs with more examples, and learn the basics of Boost.Asio Who This Book Is For This book is for C++ network programmers with basic knowledge of network programming, but no knowledge of how to use Boost.Asio for network programming
Read “Clojure high performance programming”:
Read “Clojure high performance programming” by choosing from the options below.
Search for “Clojure high performance programming” downloads:
Visit our Downloads Search page to see if downloads are available.
Borrow "Clojure high performance programming" Online:
Check on the availability of online borrowing. Please note that online borrowing has copyright-based limitations and that the quality of ebooks may vary.
- Is Online Borrowing Available: Yes
- Preview Status: restricted
- Check if available: The Open Library & The Internet Archive
Find “Clojure high performance programming” in Libraries Near You:
Read or borrow “Clojure high performance programming” from your local library.
- The WorldCat Libraries Catalog: Find a copy of “Clojure high performance programming” at a library near you.
Buy “Clojure high performance programming” online:
Shop for “Clojure high performance programming” on popular online marketplaces.
- Ebay: New and used books.