If there were discussions then it wouldn't be so good for exactly what it's good for, discovering good solid answers to obscure programming problems.
Where else to discover why date pickers don't always properly show up[1] or why the default printer doesn't stay in sync in VB6[2].
Discussions would quickly drown out the real content and it would degrade. I love the fact that from the start SO has been about real answers to real problems.