Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Clojure Programming Cookbook
  • Toc
  • feedback
Clojure Programming Cookbook

Clojure Programming Cookbook

By : Makoto Hashimoto, Modrzyk
3 (1)
close
Clojure Programming Cookbook

Clojure Programming Cookbook

3 (1)
By: Makoto Hashimoto, Modrzyk

Overview of this book

When it comes to learning and using a new language you need an effective guide to be by your side when things get rough. For Clojure developers, these recipes have everything you need to take on everything this language offers. This book is divided into three high impact sections. The first section gives you an introduction to live programming and best practices. We show you how to interact with your connections by manipulating, transforming, and merging collections. You’ll learn how to work with macros, protocols, multi-methods, and transducers. We’ll also teach you how to work with languages such as Java, and Scala. The next section deals with intermediate-level content and enhances your Clojure skills, here we’ll teach you concurrency programming with Clojure for high performance. We will provide you with advanced best practices, tips on Clojure programming, and show you how to work with Clojure while developing applications. In the final section you will learn how to test, deploy and analyze websocket behavior when your app is deployed in the cloud. Finally, we will take you through DevOps. Developing with Clojure has never been easier with these recipes by your side!
Table of Contents (11 chapters)
close

Using destructuring techniques

Destructuring can be used in defn and let. This technique provides flexible ways to extract values for bodies of functions or let expressions. Though destructuring looks a bit unusual for beginners of Clojure and programmers of other languages, it is effective for extracting desired values from the structural data of arguments and binding values.

Getting ready

This recipe uses the math.numeric-tower and core.match functions, so change the :dependency in the project.clj file as follows and restart the REPL, and be ready:

 :dependencies 
  [[org.clojure/clojure "1.8.0"] 
   [org.clojure/math.numeric-tower "0.0.4"] 
   [org.clojure/core.match "0.3.0-alpha4"] 
   ] 

How to do it...

Here, let's learn how to do sequential destructing and map destructing.

Sequential destructuring

Sequential destructuring is for extracting desired elements from sequence collections. In the following code, variables x, y, z bind to 1, 2, 3:

(let [[x...

Unlock full access

Continue reading for free

A Packt free trial gives you instant online access to our library of over 7000 practical eBooks and videos, constantly updated with the latest in tech
bookmark search playlist download font-size

Change the font size

margin-width

Change margin width

day-mode

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Delete Bookmark

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete