A. Takes one or more columns form a row and returns a single value
B. Takes one or more columns form many rows and returns a single value
C. Take zero or more inputs and produce multiple columns or rows of output
D. Detects the type of input programmatically and provides appropriate response