It all boils down to errors encountered at compile time vs runtime. Generics provide compile time checking for data types, providing compile time errors when something does not match. Without them,...