Implement attributes Includes regular and global attributes. The relevant concepts have an initially empty and hidden list of attribute sections. These become visible upon adding the first section with an intention, after which more can be added with the keyboard as usual. Global attribute sections always specify one of two targets as required by the C# specification, while for regular attribute sections one can optionally be added with an intention and the available targets depend on the context. Some logic is also provided to validate attribute argument lists and constrain the properties available for named arguments, but typesystem support is needed for the numerous additional requirements. Finally, several abstract and interface concepts have been added to help manage the common behaviours.