| | | 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 |