Clojure programming

cover image

Where to find it

Information & Library Science Library

Call Number
QA76.62 .E54 2012
Status
Available

Undergrad Library

Call Number
QA76.62 .E54 2012
Status
Available

Summary

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

Contents

Down the rabbit hole -- Functional programming -- Collections and data structures -- Concurrency and parallelism -- Macros -- Datatypes and protocols -- Multimethods -- Organizing and building Clojure projects -- Java and JVM interoperability -- REPL-oriented programming -- Numerics and mathematics -- Design patterns -- Testing -- Using relational databases -- Using nonrelational databases -- Clojure and the Web -- Deploying Clojure web applications -- Choosing Clojure type definition forms wisely -- Introducing Clojure into your workplace -- What's next?

Other details