此商品已下架,若仍需天瓏代為查詢或代購書籍,請與門市客服人員聯繫,或 E-mail 至 service@tenlong.com.tw 將有專人為您服務。

Understanding Programming Languages
暫譯: 理解程式語言

Jones, Cliff B.

  • 出版商: Springer
  • 出版日期: 2021-11-18
  • 售價: $2,320
  • 貴賓價: 9.5$2,204
  • 語言: 英文
  • 頁數: 244
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 3030592596
  • ISBN-13: 9783030592592
  • 海外代購書籍(需單獨結帳)

商品描述

This book is about describing the meaning of programming languages. The author teaches the skill of writing semantic descriptions as an efficient way to understand the features of a language. While a compiler or an interpreter offers a form of formal description of a language, it is not something that can be used as a basis for reasoning about that language nor can it serve as a definition of a programming language itself since this must allow a range of implementations. By writing a formal semantics of a language a designer can yield a far shorter description and tease out, analyse and record design choices.
Early in the book the author introduces a simple notation, a meta-language, used to record descriptions of the semantics of languages. In a practical approach, he considers dozens of issues that arise in current programming languages and the key techniques that must be mastered in order to write the required formal semantic descriptions. The book concludes with a discussion of the eight key challenges: delimiting a language (concrete representation), delimiting the abstract content of a language, recording semantics (deterministic languages), operational semantics (non-determinism), context dependency, modelling sharing, modelling concurrency, and modelling exits.
The content is class-tested and suitable for final-year undergraduate and postgraduate courses. It is also suitable for any designer who wants to understand languages at a deep level. Most chapters offer projects, some of these quite advanced exercises that ask for complete descriptions of languages, and the book is supported throughout with pointers to further reading and resources. As a prerequisite the reader should know at least one imperative high-level language and have some knowledge of discrete mathematics notation for logic and set theory.

商品描述(中文翻譯)

這本書是關於描述程式語言的意義。作者教授撰寫語意描述的技能,作為理解語言特性的有效方法。雖然編譯器或解譯器提供了一種語言的正式描述形式,但這並不能作為推理該語言的基礎,也無法作為程式語言本身的定義,因為這必須允許多種實作。通過撰寫語言的正式語意,設計者可以產生更簡短的描述,並提煉、分析和記錄設計選擇。

在書的早期,作者介紹了一種簡單的符號系統,一種元語言,用於記錄語言語意的描述。在實務方法中,他考慮了當前程式語言中出現的數十個問題,以及必須掌握的關鍵技術,以撰寫所需的正式語意描述。書的結尾討論了八個關鍵挑戰:界定語言(具體表示)、界定語言的抽象內容、記錄語意(確定性語言)、操作語意(非確定性)、上下文依賴性、建模共享、建模並發性和建模退出。

內容經過課堂測試,適合最後一年本科生和研究生課程。它也適合任何希望深入理解語言的設計者。大多數章節提供專案,其中一些是相當進階的練習,要求對語言進行完整的描述,並且整本書都提供了進一步閱讀和資源的指引。作為先決條件,讀者應該至少了解一種命令式高級語言,並對離散數學的邏輯和集合論符號有一定的了解。