What programming language categories are there?
I know about object-oriented languages, functional languages, procedural languages.... what other 'paradigms' are there? What are the best languages in each class? In what situations would you choose one type of language over another?
Are there any really obscure language types that may not have taken off in general use but might still be interesting to learn about? (And are there any new developments in the field that might yet take off?)