Clojure for Domain-specific Languages
暫譯: Clojure 用於領域特定語言

Ryan D. Kelker

  • 出版商: Packt Publishing
  • 出版日期: 2013-08-04
  • 售價: $2,220
  • 貴賓價: 9.5$2,109
  • 語言: 英文
  • 頁數: 268
  • 裝訂: Paperback
  • ISBN: 1782166505
  • ISBN-13: 9781782166504
  • 相關分類: JVM 語言
  • 海外代購書籍(需單獨結帳)

買這商品的人也買了...

商品描述

Enhance your existing Clojure know-how with this example-packed tutorial on building custom languages. It will help you unlock the potential of Clojure in a way you probably never thought possible.

Overview

  • Explore DSL concepts from existing Clojure DSLs and libraries
  • Bring Clojure into your Java applications as Clojure can be hosted on a Java platform
  • A tutorial-based guide to develop custom domain-specific languages

In Detail

Clojure is a very new and rapidly growing language that runs on top of the JVM. The language being hosted on the Java platform allows for Clojure applications to use existing Java components. Although there are objects in Clojure, the language is not object oriented.

"Clojure for Domain-specific Languages" is an example-oriented guide to building custom languages. Many of the core components of Clojure are covered to help you understand your options when making a domain-specific language. By the end of this book, you should be able to make an internal DSL. Starting with a comparison of existing DSLs, this book will move on to guide you through general programming, Clojure editing, and project management. The chapters after that are code oriented.

"Clojure for Domain-specific Languages" tries to expose you to as much Clojure code as possible. Many of the examples are executed in a Read-Evaluate-Print-Loop environment, so the reader can also follow along on their own machine. This book uses Leiningen, but no prior knowledge of it is required.

"Clojure for Domain-Specific Languages" aims to make you familiar with the Clojure language and help you learn the tools to make your own language.

What you will learn from this book

  • Understand the pros and cons of a domain-specific language
  • Learn general programming design concepts
  • Know the benefits of a Lisp-based syntax
  • Edit Clojure files in Emacs
  • Learn to operate a Read-Evaluate-Loop session from within Emacs
  • Build Clojure projects with Leiningen
  • Manipulate and make polymorphic objects in a non-object-oriented language
  • Create a Twitter domain-specific language to understand Clojure, its Java, and Lisp foundation closely
  • Use your Clojure applications inside of a Java project

Approach

An example-oriented approach to develop custom domain-specific languages.

Who this book is written for

If you've already developed a few Clojure applications and wish to expand your knowledge on Clojure or domain-specific languages in general, then this book is for you. If you're an absolute Clojure beginner, then you may only find the detailed examples of the core Clojure components of value. If you've developed DSLs in other languages, this Lisp and Java-based book might surprise you with the power of Clojure.

商品描述(中文翻譯)

增強您現有的 Clojure 知識,透過這本充滿範例的教程來構建自定義語言。這將幫助您以您可能從未想過的方式釋放 Clojure 的潛力。

概述
- 探索現有 Clojure DSL 和庫中的 DSL 概念
- 將 Clojure 引入您的 Java 應用程式,因為 Clojure 可以在 Java 平台上運行
- 一個基於教程的指南,用於開發自定義領域特定語言

詳細內容
Clojure 是一種非常新且快速成長的語言,運行在 JVM 之上。這種語言在 Java 平台上運行,允許 Clojure 應用程式使用現有的 Java 組件。雖然 Clojure 中有物件,但這種語言並不是面向物件的。

《Clojure for Domain-specific Languages》是一本以範例為導向的自定義語言構建指南。書中涵蓋了許多 Clojure 的核心組件,幫助您了解在製作領域特定語言時的選擇。到本書結束時,您應該能夠製作一個內部 DSL。本書從比較現有的 DSL 開始,然後引導您進入一般編程、Clojure 編輯和專案管理。之後的章節則以程式碼為導向。

《Clojure for Domain-Specific Languages》旨在讓您接觸到盡可能多的 Clojure 程式碼。許多範例是在 Read-Evaluate-Print-Loop 環境中執行,因此讀者也可以在自己的機器上跟隨。本書使用 Leiningen,但不需要事先了解它。

《Clojure for Domain-Specific Languages》的目標是讓您熟悉 Clojure 語言,並幫助您學習製作自己語言的工具。

您將從本書中學到的內容
- 理解領域特定語言的優缺點
- 學習一般編程設計概念
- 知道基於 Lisp 語法的好處
- 在 Emacs 中編輯 Clojure 檔案
- 學習如何在 Emacs 中操作 Read-Evaluate-Loop 會話
- 使用 Leiningen 構建 Clojure 專案
- 在非面向物件的語言中操作和創建多型物件
- 創建一個 Twitter 領域特定語言,以更深入了解 Clojure 及其 Java 和 Lisp 基礎
- 在 Java 專案中使用您的 Clojure 應用程式

方法
以範例為導向的方法來開發自定義領域特定語言。

本書的讀者對象
如果您已經開發了一些 Clojure 應用程式,並希望擴展您對 Clojure 或領域特定語言的一般知識,那麼這本書適合您。如果您是完全的 Clojure 初學者,那麼您可能只會發現核心 Clojure 組件的詳細範例有價值。如果您在其他語言中開發過 DSL,這本基於 Lisp 和 Java 的書籍可能會讓您驚訝於 Clojure 的強大。