Mastering Clojure Macros
Colin Jones
Venduto da Rarewaves USA, OSWEGO, IL, U.S.A.
Venditore AbeBooks dal 10 giugno 2025
Nuovi - Brossura
Condizione: Nuovo
Ships within U.S.A.
Quantità: Più di 20 disponibili
Aggiungere al carrelloVenduto da Rarewaves USA, OSWEGO, IL, U.S.A.
Venditore AbeBooks dal 10 giugno 2025
Condizione: Nuovo
Quantità: Più di 20 disponibili
Aggiungere al carrelloLevel up your skills by taking advantage of Clojure's powerful macro system. Macros make hard things possible and normal things easy. They can be tricky to use, and this book will help you deftly navigate the terrain. You'll discover how to write straightforward code that avoids duplication and clarifies your intentions. You'll learn how and why to write macros. You'll learn to recognize situations when using a macro would (and wouldn't!) be helpful. And you'll use macros to remove unnecessary code and build new language features. Clojure offers some sharp tools in its toolbox, and one of the sharpest is its macro system. This book will help you write macros using Clojure, and more importantly, recognize when you should be using macros in the first place. The Lisp "code-as-data" philosophy gives tremendous advantages to macro authors and users. You can use macros to evaluate code in other contexts, move computations to compile time, and create beautiful API layers. You don't need to wait on the Clojure language itself to add new features, you'll learn how to implement even the lowest-level features as macros.You'll step through representative samples of how to use macros in production libraries and applications, find clear details on how to construct macros, and learn pointers to avoid obstacles that often trip up macro amateurs. Clojure macros are more straightforward to use than metaprogramming features in many other languages, but they're different enough from normal programming to present challenges of their own. Mastering Clojure Macros examines some of these issues, along with alternatives to macros where they exist. By the time you finish this book, you'll be thinking like a macro professional. What You Need: The book examples have been developed under Clojure 1.6.0, although earlier and later versions of Clojure may work as well. You'll want to use Leiningen 2.x in order to follow along with the examples that use external projects.
Codice articolo LU-9781941222225
Level up your skills by taking advantage of Clojure's powerful macro system. Macros make hard things possible and normal things easy. They can be tricky to use, and this book will help you deftly navigate the terrain. You'll discover how to write straightforward code that avoids duplication and clarifies your intentions. You'll learn how and why to write macros. You'll learn to recognize situations when using a macro would (and wouldn't!) be helpful. And you'll use macros to remove unnecessary code and build new language features.
Clojure offers some sharp tools in its toolbox, and one of the sharpest is its macro system. This book will help you write macros using Clojure, and more importantly, recognize when you should be using macros in the first place.
The Lisp "code-as-data" philosophy gives tremendous advantages to macro authors and users. You can use macros to evaluate code in other contexts, move computations to compile time, and create beautiful API layers. You don't need to wait on the Clojure language itself to add new features, you'll learn how to implement even the lowest-level features as macros. You'll step through representative samples of how to use macros in production libraries and applications, find clear details on how to construct macros, and learn pointers to avoid obstacles that often trip up macro amateurs.
Clojure macros are more straightforward to use than metaprogramming features in many other languages, but they're different enough from normal programming to present challenges of their own. Mastering Clojure Macros examines some of these issues, along with alternatives to macros where they exist.
By the time you finish this book, you'll be thinking like a macro professional.
What You Need:The book examples have been developed under Clojure 1.6.0, although earlier and later versions of Clojure may work as well. You'll want to use Leiningen 2.x in order to follow along with the examples that use external projects.
Colin Jones is a software craftsman at 8th Light, where he builds web, mobile, and desktop systems for clients large and small. He's an active participant in the Clojure open source community, including work on the Clojure Koans, REPLy, Leiningen, and small contributions to Clojure itself.
Le informazioni nella sezione "Su questo libro" possono far riferimento a edizioni diverse di questo titolo.
Visita la pagina della libreria
Se sei un consumatore, puoi esercitare il tuo diritto di recesso seguendo le istruzioni riportate di seguito. Per "consumatore" si intende qualsiasi persona fisica che agisca per fini che non rientrano nel quadro della sua attività commerciale, industriale, artigianale o professionale.
Informazioni relative al diritto di recesso
Diritto di recesso
Hai il diritto di recedere dal presente contratto entro 14 giorni per qualsiasi motivo.
Il periodo di recesso scade dopo 14 giorni dal giorno in cui
tu acquisisci, o un terzo designato diverso dal vettore e da te acquisisce, il possesso fisico dell'ultimo bene o l'ultimo lotto o pezzo.
Per esercitare il diritto di recesso, sei tenuto a informare Rarewaves USA, 10100 W Sample Rd, Ste 101, 33065, Coral Springs, Florida, U.S.A., della tua decisione di recedere dal presente contratto tramite una dichiarazione esplicita (ad esempio lettera inviata per posta, fax o posta elettronica). A tal fine puoi utilizzare il modulo tipo di recesso, ma non e' obbligatorio. Puoi anche compilare e inviare elettronicamente il modulo tipo di recesso o qualsiasi altra esplicita dichiarazione sul nostro sito web, dalla sezione "Ordini" nel "Mio Account". Nel caso scegliessi questa opzione, ti trasmetteremo senza indugio una conferma di ricevimento su un supporto durevole (ad esempio per posta elettronica).
Per rispettare il termine di recesso, é sufficiente inviare la comunicazione relativa all'esercizio del diritto di recesso prima della scadenza del periodo di recesso.
Effetti del recesso
Se recedi dal presente contratto, ti saranno rimborsati tutti i pagamenti che hai effettuato a nostro favore, compresi i costi di consegna (ad eccezione dei costi supplementari derivanti dalla tua eventuale scelta di un tipo di consegna diverso dal tipo meno costoso di consegna standard da noi offerto). Potremo trattenere dal rimborso le somme derivanti da una diminuzione del valore del prodotto risultante da una tua non necessaria manipolazione.
I rimborsi verranno effettuati senza indebito ritardo e in ogni caso non oltre 14 giorni dal giorno in cui siamo stati informati della tua decisione di recedere dal presente contratto.
Detti rimborsi saranno effettuati utilizzando lo stesso mezzo di pagamento da te usato per la transazione iniziale, salvo che tu non abbia espressamente convenuto altrimenti; in ogni caso, non dovrai sostenere alcun costo quale conseguenza di tale rimborso. Il rimborso può essere sospeso fino al ricevimento dei beni oppure fino all'avvenuta dimostrazione da parte tua di aver rispedito i beni, se precedente.
Ti preghiamo di rispedire i beni o di consegnarli a Rarewaves USA, 10100 W Sample Rd, Ste 101, 33065, Coral Springs, Florida, U.S.A., senza indebiti ritardi e in ogni caso entro 14 giorni dal giorno in cui hai comunicato il tuo recesso dal presente contratto. Il termine è rispettato se rispedisci i beni prima della scadenza del periodo di 14 giorni. I costi diretti della restituzione dei beni saranno a tuo carico. Sei responsabile solo della diminuzione del valore dei beni risultante da una manipolazione del bene diversa da quella necessaria per stabilire la natura, le caratteristiche e il funzionamento dei beni.
Eccezioni al diritto di recesso
Il diritto di recesso non si applica in caso di:
Modulo di recesso tipo
(Compilare e restituire il presente modulo solo se si desidera recedere dal contratto)
Destinatario: (Rarewaves USA, 10100 W Sample Rd, Ste 101, 33065, Coral Springs, Florida, U.S.A.)
Con la presente io/noi (*) notifichiamo il recesso dal mio/nostro (*) contratto di vendita dei seguenti beni/servizi (*)
Ordinato il (*) /ricevuto il (*)
Nome del/dei consumatore(i)
Indirizzo del/dei consumatore(i)
Firma del/dei consumatore(i) (solo se il presente modulo è notificato in versione cartacea)
Data
(*) Cancellare la dicitura inutile.
Please note that we do not offer Priority shipping to any country.
We currently do not ship to the below countries:
Afghanistan
Bhutan
Brazil
Brunei Darussalam
Channel Islands
Chile
Israel
Lao
Mexico
Russian Federation
Saudi Arabia
South Africa
Yemen
Please do not attempt to place orders with any of these countries as a ship to address - they will be cancelled.
| Quantità dell?ordine | Da 9 a 12 giorni lavorativi | Da 9 a 12 giorni lavorativi |
|---|---|---|
| Primo articolo | EUR 0.00 | EUR 0.00 |
I tempi di consegna sono stabiliti dai venditori e variano in base al corriere e al paese. Gli ordini che devono attraversare una dogana possono subire ritardi e spetta agli acquirenti pagare eventuali tariffe o dazi associati. I venditori possono contattarti in merito ad addebiti aggiuntivi dovuti a eventuali maggiorazioni dei costi di spedizione dei tuoi articoli.