Because the guys who designed IPv6 (the protocols, the Best Current Practices and everything else) were pretty clueless.
One practical reason is, I guess, the fact that if you autoconfigure hosts with their MAC address as host part of an IPv6 address, you need a few more bits for subnets. 48 bits in the host part, 64 bits available for your own addressing, that leaves 16 bits for subnets at home (or in your small company). It's kinda like giving everyone a class A IPv4 range.
Well from what I understand, /32 is for organisations, and /48 is for LANs/VLANs. so even if there are 65,000 or so LANs per organisation, it means each of these subnets has a shitload of hosts. Per LAN, it's way too much than most firms ever need.
Even in a, say, /80, yes there would be more subnets available, but it simply means a lot more subnets can be conserved. I could live until 100, and I doubt I'd see a subnet with 4 billion hosts in it.