| | Copyright |
| | Microsoft .NET Development Series |
| | Titles in the Series |
| | Foreword |
| | Preface |
| | | Intended Audience for This Book |
| | | Organization of This Book |
| | | Our Motivation for Writing This Book |
| | | Current Status of the .NET Framework |
| | | Acknowledgments |
|
| | Chapter 1. Introducing the .NET Framework |
| | | Programming Issues |
| | | Solutions |
| | | Comparing the .NET Framework and IDL-Based Systems |
| | | Elements of the .NET Framework |
| | | Exposing the .NET Framework |
| | | Applications and the .NET Framework |
| | | Terminology |
| | | Example: Hello World |
| | | Summary |
|
| | Chapter 2. The Type System |
| | | The Relationship Between Programming Languages and Type Systems |
| | | Elements of the CLR Type System |
| | | Value Types |
| | | Reference Types |
| | | Example: User-Defined Object Type |
| | | Example: Use of Interfaces on Value Types |
| | | Assignment Compatibility |
| | | Nested Types |
| | | Visibility |
| | | Accessibility |
| | | Summary |
|
| | Chapter 3. The Metadata System |
| | | Metadata Issues |
| | | Saving Metadata About Types: IDL Files |
| | | Reflection: Inspection of a Type's Metadata |
| | | Metadata Tools and Extensions |
| | | Dynamic Discovery of Types |
| | | Assemblies and Manifests |
| | | Meta-Programming |
| | | Metadata File Format |
| | | COM Interop |
| | | Summary |
|
| | Chapter 4. The Execution System |
| | | The Execution System Versus Other Component Models |
| | | Intermediate Language |
| | | Starting a CLR Program |
| | | COR Debugger |
| | | Application Domains |
| | | Memory Management |
| | | Security |
| | | Policy Manager |
| | | Stack Walks |
| | | Declarative and Imperative Style |
| | | Summary |
|
| | Chapter 5. Building Applications |
| | | Existing Technologies to Solve Application-Related Problems |
| | | Assemblies |
| | | Example: A Simple Assembly |
| | | Embedded and Linked Resources |
| | | The Assembly Linker |
| | | Public and Private Assemblies |
| | | Assembly Versioning |
| | | Internationalization and Localization |
| | | Application Domains |
| | | Summary |
|
| | Chapter 6. Deploying Applications |
| | | Configuration Files |
| | | Downloading Web Content |
| | | Installing Applications |
| | | Using the CLI on Non-Windows Platforms |
| | | Summary |
|
| | Chapter 7. The Framework Class Library |
| | | A Historical Perspective |
| | | Goals of the .NET Framework |
| | | Design Guidelines |
| | | Namespaces |
| | | Looking Back and Looking Ahead |
| | | Summary |
|
| | Appendix A. Visual Basic .NET |
| | | Type System Additions |
| | | Type System Modifications |
| | | Platform Changes |
| | | Language Cleanup |
| | | New Features |
| | | Future Directions |
| | | Conclusions |
|
| | Appendix B. C# |
| | | History and Design Goals |
| | | The C# Type System |
| | | Component-Oriented Development |
| | | Unsafe Code |
| | | Neat Things |
| | | A Stack Component Example |
| | | Future Directions |
| | | C# and Standardization |
| | | Conclusions |
|
| | Appendix C. Python for .NET |
| | | A Brief Overview of Python |
| | | Python for .NET |
| | | Using Python for .NET |
| | | Limitations of Python for .NET |
| | | Possible .NET and Python Enhancements |
| | | Alternative Implementation Strategies |
| | | Conclusions |
|
| | Appendix D. Perl and the .NET Runtime |
| | | Perl for .NET Research Compiler |
| | | PerlNET Component Builder |
| | | Supported .NET Features |
| | | PerlNET Status |
| | | Example: A Windows Forms Application |
| | | Conclusions |
|
| | Appendix E. Component Pascal on the CLR |
| | | About Component Pascal |
| | | Mapping to the CLR |
| | | Semantic Challenges |
| | | Conclusions |
|
| | Appendix F. Hotdog: Compiling Scheme to Object-Oriented Virtual Machines |
| | | Introduction to the Hotdog Scheme Compiler |
| | | Scheme, Briefly |
| | | Object-Oriented Virtual Machines |
| | | Implementations |
| | | Limitations |
| | | Performance Improvements |
| | | Conclusions |
| | | References |
|
| | Appendix G. Functional Languages for the .NET Framework |
| | | A Brief Introduction to Mondrian |
| | | Types in Mondrian |
| | | Functions in Mondrian |
| | | Calling Other CLR-Hosted Languages |
| | | The Power of .NET: A Multilanguage Example |
| | | Conclusions |
| | | References |
|
| | Appendix H. Active Oberon for .NET: A Case Study in Language Model Mapping |
| | | History of the ETH Programming Languages |
| | | The Active Object System |
| | | The Mapping to the Common Type System |
| | | Summary and Conclusions |
| | | Acknowledgments |
| | | References |
|
| | Glossary |
| | Suggested Reading List |