{"schema_version":"bf_book_companion_v1","release_id":"20261010T034321Z-reviewed-full-unique-works","book":{"amazon_purchase_url":"https://www.amazon.com/dp/1449394701?tag=bookfrontie00-20","asin":"1449394701","authors":["Chas Emerick","Christophe Grand","Brian Carper"],"book_id":"9781449394707","canonical_url":"https://bookfrontier.com/books/clojure-programming-9781449394707","cover_image_url":"https://img.bookfrontier.com/9781449394707.jpg?v=6b7caedbb574aceb","description":"Clojure is a practical, general-purpose language that offers expressivity rivaling other dynamic languages like Ruby and Python, while seamlessly taking advantage of Java libraries, services, and all of the resources of the JVM ecosystem. This book helps you learn the fundamentals of Clojure with examples relating it to the languages you know already, in the domains and topics you work with every day. See how this JVM language can help eliminate unnecessary complexity from your programming practice and open up new options for solving the most challenging problems. Clojure Programming demonstrates the language’s flexibility by showing how it can be used for common tasks like web programming and working with databases, up through more demanding applications that require safe, effective concurrency and parallelism, data analysis, and more. This in-depth look helps tie together the full Clojure development experience, from how to organize your project and an introduction to Clojure build tooling, to a tutorial on how to make the most of Clojure’s REPL during development, and how to deploy your finished application in a cloud environment. - Learn how to use Clojure while leveraging your investment in the Java platform - Understand the advantages of Clojure as an efficient Lisp for the JVM - See how Clojure is used today in several practical domains - Discover how Clojure eliminates the need for many verbose and complicated design patterns - Deploy large or small web applications to the cloud with Clojure","forthcoming":false,"isbn13":"9781449394707","publication_date":"20120522","publisher":"O'Reilly Media","slug":"clojure-programming","subtitle":"Practical Lisp for the Java World","title":"Clojure Programming"},"discovery":{"categories":{"all":[{"bisac_code":"COM051280","confidence_band":"medium","label":"Java Programming","score":0.8106,"source":"bisac_hint_model"},{"bisac_code":"COM051210","confidence_band":"medium","label":"Object-Oriented Programming","score":0.8103,"source":"bisac_hint_model"},{"bisac_code":"COM051220","confidence_band":"medium","label":"Parallel Programming","score":0.8027,"source":"bisac_hint_model"}],"hint":[{"bisac_code":"COM051280","confidence_band":"medium","label":"Java Programming","score":0.8106,"source":"bisac_hint_model"},{"bisac_code":"COM051210","confidence_band":"medium","label":"Object-Oriented Programming","score":0.8103,"source":"bisac_hint_model"},{"bisac_code":"COM051220","confidence_band":"medium","label":"Parallel Programming","score":0.8027,"source":"bisac_hint_model"}],"publisher":[{"bisac_code":"COM051210","confidence_band":"high","label":"Object-Oriented Programming","score":1,"source":"onix_publisher_code"},{"bisac_code":"COM051280","confidence_band":"high","label":"Java Programming","score":1,"source":"onix_publisher_code"},{"bisac_code":"COM060160","confidence_band":"high","label":"Web Programming","score":1,"source":"onix_publisher_code"}]},"genres":[{"label":"Java Programming","score":0.8106,"slug":"java-programming"},{"label":"Object-Oriented Programming","score":0.8103,"slug":"object-oriented-programming"},{"label":"Parallel Programming","score":0.8027,"slug":"parallel-programming"}],"reader_fit":["Readers learning Clojure who know other programming languages","Java developers who want to use Clojure on the JVM"],"related_lists":[],"series":null,"similar_books":[{"authors":["Daniel Higginbotham"],"book_id":"9781593275914","cover_image_url":"https://img.bookfrontier.com/9781593275914.jpg?v=55382d1d0b9698b7","score":0.8767,"title":"Clojure for the Brave and True","url":"https://bookfrontier.com/books/9781593275914"},{"authors":["Marc Loy","Patrick Niemeyer","Daniel Leuck"],"book_id":"9781492056270","cover_image_url":"https://img.bookfrontier.com/9781492056270.jpg?v=722c35ff6b6e47b9","score":0.7466,"title":"Learning Java","url":"https://bookfrontier.com/books/9781492056270"},{"authors":["Joshua Bloch"],"book_id":"9780134685991","cover_image_url":"https://img.bookfrontier.com/9780134685991.jpg?v=5735bc9d90fb1576","score":0.7387,"title":"Effective Java","url":"https://bookfrontier.com/books/9780134685991"},{"authors":["Brian Goetz","Tim Peierls","Joshua Bloch","Joseph Bowbeer"],"book_id":"9780321349606","cover_image_url":"https://img.bookfrontier.com/9780321349606.jpg?v=9b1275a03c5d539a","score":0.7336,"title":"Java Concurrency in Practice","url":"https://bookfrontier.com/books/9780321349606"},{"authors":["Robert Sedgewick","Kevin Wayne"],"book_id":"9780672337840","cover_image_url":"https://img.bookfrontier.com/9780672337840.jpg?v=63b2a984b0e852cd","score":0.7115,"title":"Introduction to Programming in Java","url":"https://bookfrontier.com/books/9780672337840"},{"authors":["John Lewis","Peter DePasquale","Joe Chase"],"book_id":"9780134285436","cover_image_url":"https://img.bookfrontier.com/9780134285436.jpg?v=fb4ed40893cad5d6","score":0.7058,"title":"Java Foundations","url":"https://bookfrontier.com/books/9780134285436"},{"authors":["Luciano Ramalho"],"book_id":"9781492056355","cover_image_url":"https://img.bookfrontier.com/9781492056355.jpg?v=8f7c16ee7ac055ff","score":0.698,"title":"Fluent Python","url":"https://bookfrontier.com/books/9781492056355"},{"authors":["Doug Lowe"],"book_id":"9781119986645","cover_image_url":"https://img.bookfrontier.com/9781119986645.jpg?v=4666df93c365c2cb","score":0.698,"title":"Java All-in-one for Dummies","url":"https://bookfrontier.com/books/9781119986645"}],"topics":[],"what_you_get":["Themes: Clojure on the JVM, Web and database programming, Concurrency and data analysis.","Reading lane: Java Programming and Object Oriented Programming.","Publisher: O'Reilly Media."]},"llm_signals":{"confidence":0.94,"pacing":"unknown","reader_fit":["Readers learning Clojure who know other programming languages","Java developers who want to use Clojure on the JVM"],"themes":["Clojure on the JVM","Web and database programming","Concurrency and data analysis"],"tropes":[]},"source_presence":{"amazon":true,"book_detail":true,"goodreads":true,"llm_signals":true,"similarity_seed":true},"stats":{"amazon_ratings_count":89,"goodreads_ratings_count":467,"goodreads_reviews_count":30,"quality_score":0.9004}}