Language:
English
繁體中文
Help
回圖書館首頁
手機版館藏查詢
Login
Back
Switch To:
Labeled
|
MARC Mode
|
ISBD
Understanding programming languages
~
Jones, Cliff B.
Linked to FindBook
Google Book
Amazon
博客來
Understanding programming languages
Record Type:
Electronic resources : Monograph/item
Title/Author:
Understanding programming languages/ by Cliff B. Jones.
Author:
Jones, Cliff B.
Published:
Cham :Springer International Publishing : : 2020.,
Description:
xi, 229 p. :ill. (some col.), digital ;24 cm.
[NT 15003449]:
Programming Languages -- Delimiting a Language -- Operational Semantics -- Typing -- Block Structure -- Additional Issues in Sequential Languages -- Alternative Semantic Approaches -- Shared Variable Concurrency -- Concurrent OOLs -- Exceptional Ordering -- Conclusions -- App. A, Simple Language -- App. B, Typed Language -- App. C, Blocks Language -- App. D, COOL -- App. E, VDM Notation.
Contained By:
Springer Nature eBook
Subject:
Programming languages (Electronic computers) -
Online resource:
https://doi.org/10.1007/978-3-030-59257-8
ISBN:
9783030592578
Understanding programming languages
Jones, Cliff B.
Understanding programming languages
[electronic resource] /by Cliff B. Jones. - Cham :Springer International Publishing :2020. - xi, 229 p. :ill. (some col.), digital ;24 cm.
Programming Languages -- Delimiting a Language -- Operational Semantics -- Typing -- Block Structure -- Additional Issues in Sequential Languages -- Alternative Semantic Approaches -- Shared Variable Concurrency -- Concurrent OOLs -- Exceptional Ordering -- Conclusions -- App. A, Simple Language -- App. B, Typed Language -- App. C, Blocks Language -- App. D, COOL -- App. E, VDM Notation.
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.
ISBN: 9783030592578
Standard No.: 10.1007/978-3-030-59257-8doiSubjects--Topical Terms:
606806
Programming languages (Electronic computers)
LC Class. No.: QA76.7 / .J65 2020
Dewey Class. No.: 005.13
Understanding programming languages
LDR
:03221nmm a2200337 a 4500
001
2256869
003
DE-He213
005
20201117125849.0
006
m d
007
cr nn 008maaau
008
220420s2020 sz s 0 eng d
020
$a
9783030592578
$q
(electronic bk.)
020
$a
9783030592561
$q
(paper)
024
7
$a
10.1007/978-3-030-59257-8
$2
doi
035
$a
978-3-030-59257-8
040
$a
GP
$c
GP
041
0
$a
eng
050
4
$a
QA76.7
$b
.J65 2020
072
7
$a
UY
$2
bicssc
072
7
$a
COM014000
$2
bisacsh
072
7
$a
UY
$2
thema
072
7
$a
UYA
$2
thema
082
0 4
$a
005.13
$2
23
090
$a
QA76.7
$b
.J76 2020
100
1
$a
Jones, Cliff B.
$3
892834
245
1 0
$a
Understanding programming languages
$h
[electronic resource] /
$c
by Cliff B. Jones.
260
$a
Cham :
$b
Springer International Publishing :
$b
Imprint: Springer,
$c
2020.
300
$a
xi, 229 p. :
$b
ill. (some col.), digital ;
$c
24 cm.
505
0
$a
Programming Languages -- Delimiting a Language -- Operational Semantics -- Typing -- Block Structure -- Additional Issues in Sequential Languages -- Alternative Semantic Approaches -- Shared Variable Concurrency -- Concurrent OOLs -- Exceptional Ordering -- Conclusions -- App. A, Simple Language -- App. B, Typed Language -- App. C, Blocks Language -- App. D, COOL -- App. E, VDM Notation.
520
$a
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.
650
0
$a
Programming languages (Electronic computers)
$3
606806
650
0
$a
Computer programming.
$3
527209
650
1 4
$a
Theory of Computation.
$3
892514
650
2 4
$a
Professional Computing.
$3
3201325
650
2 4
$a
Software Engineering/Programming and Operating Systems.
$3
891214
710
2
$a
SpringerLink (Online service)
$3
836513
773
0
$t
Springer Nature eBook
856
4 0
$u
https://doi.org/10.1007/978-3-030-59257-8
950
$a
Computer Science (SpringerNature-11645)
based on 0 review(s)
Location:
ALL
電子資源
Year:
Volume Number:
Items
1 records • Pages 1 •
1
Inventory Number
Location Name
Item Class
Material type
Call number
Usage Class
Loan Status
No. of reservations
Opac note
Attachments
W9412504
電子資源
11.線上閱覽_V
電子書
EB QA76.7 .J65 2020
一般使用(Normal)
On shelf
0
1 records • Pages 1 •
1
Multimedia
Reviews
Add a review
and share your thoughts with other readers
Export
pickup library
Processing
...
Change password
Login