In addition to providing a platform in which CIL code can execute, the CLI also defines a core set of class libraries that programs may employ, called the Base Class Library (BCL). These libraries provide foundational types and APIs, allowing the program to interact with the runtime and underlying operating system in a consistent manner. The BCL includes support for collections, simple file access, some security, fundamental data types (string, and so on), streams, and the like. Similarly, there is a Microsoft-specific library called the Framework Class Library (FCL) that adds to this and includes support for rich client user interfaces, web user interfaces, database access, distributed communication, and more. |