About wastefulness, it was reported speech and I should have put quotation marks around it.
I don’t agree at all about the impossible to run out thing. In practice we don’t have 2128 subnets, we only have either 232 or 235 if my calculations are correct. Assuming that the prefix given to an ISP is either a /32 or a /29 (although eg BT has something a lot shorter, iirc, but they’re unusual), that means we might only have 2p-32 (in the worst case) users per ISP where p is the per-site allocated prefix length, so only 64k users each given a /48 by an ISP who has a /32 for themselves. Basically we’re burning through our 2128 in gulps of 264 or even worse 2128-(64+(64-48)) which is a mind boggling level of "wastefulness". It was a very good idea in my view having /64 as the size of the subnet portion of the address. We could have had 32 bits per subnet but the use of 64 bits means that we can derive IPv6 addresses from MAC48 or MAC64 addresses and that is a killer argument in my view. It’s impossible to scan even 232 addresses never mind 264 and that was a very important consideration. But given that in a single bound we’ve used up 64 out of 128 bits then we just have to be a little bit careful with the remaining 64 bits. If we ever were to get into trouble we could eat into the ‘right hand’ 64 bits and get a mind boggling number of new, smaller subnets but the process of doing that would be very messy, those networks wouldn’t enjoy the privileges that current subnets do, and we would probably have found that the idea that a subnet is 64 bits had become absolutely hard coded meaning lots and lots of bugs that could not be fixed!
Your point about not fiddling with IPv6 is a good one. But IPv6 has been released very early because the need for it is so very desperate and time was needed to discover certain things based on operational experience, experience that had not been had yet, so it was inevitable that certain things would have come out wrong and would need to be changed. Changing them rather than ignoring problems is imho the right way.
My own view is that RFC 6177 is the right way to go and ISPs should give users a choice for prefix size and have a sane number categories of users such as home user, soho/power home user, small business, growing business, large business, and set sensible a default according to each category a customer falls into. Say /64 for home user, /56 for soho power home user, /56 for small business, /48 for growing business and /48 for large business. It might be worth allocating a second prefix, which is always a /48, when you allocate the initial one in the case of businesses. That way if the business starts to grow then they can either renumber and entirely move into the second prefix or can use the second prefix in addition to the first, although that would be messier for routing and possibly firewalling.