- Paperback: 928 pages
- Publisher: Addison-Wesley Professional (November 2, 2003)
- Language: English
- ISBN-10: 0321154932
- ISBN-13: 978-0321154934
- Product Dimensions: 7.2 x 1.9 x 9.2 inches
- Shipping Weight: 3.3 pounds (View shipping rates and policies)
- Average Customer Review: 7 customer reviews
- Amazon Best Sellers Rank: #1,702,928 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
The Common Language Infrastructure Annotated Standard
Use the Amazon App to scan ISBNs and compare prices.
Fulfillment by Amazon (FBA) is a service we offer sellers that lets them store their products in Amazon's fulfillment centers, and we directly pack, ship, and provide customer service for these products. Something we hope you'll especially enjoy: FBA items qualify for FREE Shipping and Amazon Prime.
If you're a seller, Fulfillment by Amazon can help you increase your sales. We invite you to learn more about Fulfillment by Amazon .
Frequently bought together
Customers who viewed this item also viewed
Customers who bought this item also bought
From the Back Cover
The Common Language Infrastructure Annotated Standard is the definitive guide to understanding the annotated specification for the Common Language Infrastructure (CLI) standard. With annotations and code samples from both the ECMA standards committee and the Microsoft Common Language Runtime (CLR) team, this book goes beyond the online documentation to clarify and amplify the original standard and describe its implementation.
The core of this book is the international CLI standard. The text describes the CLI and its parts and provides all the information needed to implement a Virtual Execution System (VES) or design a compiler that runs on top of a VES and generates portable code. Author Jim Miller draws upon his experience as editor of the CLI standard and lead of the Microsoft CLR team to guide readers through the CLI blueprint and to a complete understanding of the CLR.
Features of this book include:
- A heavily annotated architectural overview of the standard
- A description of the semantics of metadata
- A complete specification of the Portable Executable (PE) file format
- Coverage of file format and metadata layout
- An overview of the CLI libraries
- A detailed description of the Common Intermediate Language (CIL) instruction set
- Sample programs and other annexes to the standard
- An enhanced online index that allows readers to quickly and easily search the entire text for specific topics
The Common Language Infrastructure Annotated Standard is the single source programmers, language and tool designers, and library and VES developers need to render the CLI and the CLR fully comprehensible.
About the Author
James S. Miller serves as software architect of the Microsoft team that developed the CLR and as the editor of the ECMA and ISO Common Language Infrastructure (CLI) Standards. Prior to joining Microsoft he was part of the World Wide Web Consortium’s senior management team and served on the research staffs of the Massachusetts Institute of Technology (MIT) Artificial Intelligence Lab, the MIT Lab for Computer Science, Digital Equipment Corporation, and the Open Software Foundation. He earned his Ph.D. in computer science from MIT and has been a member of the Brandeis University faculty.
Susann Ragsdale was the original documentation manager for the CLR team, and currently is a consulting technical writer. Before the CLR, she was a lead writer for COM (Microsoft’s Component Object Model). This followed a long and diverse career in consulting on multiprocessor supercomputers, simulation systems, test systems, and integrated circuits.
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
Arguably, Microsoft set itself a harder task than did Sun with java. Along this road, as the book describes, a standard arose - the Common Language Infrastructure. It describes a Virtual Execution System and what type of executable code can use it. So a version of Pascal, say, that wanted to run on a VES would need to pass the compilation rules of a Pascal compiler that adhered to CLI.
An analogy might help. In some rough way, you might consider CLI + VES to be like a java virtual machine, and the choice of a language to use atop CLI to be like running java under its jvm. Granted, this is crude, but many readers are probably unfamiliar with CLI, whilst having more acquaintance with java.
Warning. The book may be heavy sledding for most. The main audience is compiler writers and language developers. Daresay that even experienced developers may not usually deal with a language at this level.
A slight irony is that CLI is meant to decouple programmers from any specific platform, which is why Microsoft pushed it over to a standards body. But the most developed instantiation currently appears to be .NET, which is inextricably interwoved with Microsoft's operating systems.
The content and chapter structure is mostly defined through the CLI standard, and is somewhat difficult to navigate, because related content is often spread across several chapters. There's lots of cross-references, making it necessary to jump from one section to another virtually all the time. But this is not this book's fault; that's how the CLI standard is structured.
What this book adds to the standard is annotations, such as disambiguations, additional (informal) verification rules, or explanations of some hard-to-understand details, and these are actually very useful. Still, it would be nice if the book was updated to the 2012 edition of the CLI standard.
This book, from the Microsoft employees that created .NET and with input from members of the standards bodies, annotates the standard with comments that provide insights into the reasoning behind the standard. If you are in one of these categories, you should seriously consider buying this book:
1. advanced .NET developers
2. language designers
3. tool designers
4. those interested in understanding virtual machines
5. developers of libraries
6. Java developer (wondering what a standard looks like, just kidding. As an intermediate-advanced Java developer, the book is very interesting though.)
7. developer who wants insight into current software architecture
Otherwise, the book is still a useful guide to help you grow as a developer if you even browse it sporadically, and unlike many programming books, it will not be obsolete in a year.
"...this book goes beyond the online documentation to clarify and amplify the original standard and describe its implementation.... the single source programmers, language and tool designers, and library and VES developers need to render the CLI and the CLR fully comprehensible."