Revert "a function typed variant can be regarded as a Map"

This reverts commit a4ecb27c15a99a6c1fe21c10dabeb11d81b63458.
clarify the reasoning, and adjust the error message (so that they would not become different by optimization)
Merge branch 'kazuho/self-hosting2/function-as-variant' into feature/self-hosting2