 Attributes are accessible to both the compiler and programmatically through reflection.Users of the language see many examples where attributes are used to address cross-cutting concerns and other mechanistic or platform uses.This creates the false impression that this is their sole intended purpose.