Types can have types or values as parameters. For example, a type defining a Bag could have a parameter representing the ...

Types can have types or values as parameters. For example, a type defining a Bag could have a parameter representing the class of objects it can hold. A type with parameters is a template that can be bound to parameter values to create a specific type. For example, binding Candy to the parameter of Bag creates a specific type "Bag".