Custom Attributes and Generics support in Visual J# .NET 2005

J# is an imperative language, but like most imperative languages it does have some declarative elements. For example, the accessibility of a method is specified by declaring it public, protected, etc. "Custom attributes" generalizes this capability, so that programmers can invent new kinds of declarative information, attach this declarative information to various program entities, and retrieve this declarative information at run-time. Custom attributes make it possible to do powerful data-driven programming. Custom attribute information is fully discoverable through reflection. To know details of authoring Custom Attributes, read the details here -

Visual J# .NET 2005 provides the ability to consume any .NET Generic type (whether it is part of the .NET Framework, or authored in other languages). Note that this includes the ability to consume generic classes, generic interfaces, constrained generic types, generic methods, instantiation at primitive types and value types and reference types. J#’s support for generics is quite powerful - try it out. Though users cannot author Generics in J#, at this point in time we believe this addresses the concerns of our customers, and of the segments we are targeting, by making all of the generic APIs available to them. You can find a whole bunch of details and info regarding Generics in J# here -