Matches in the US Open in tennis go on till 3 am in the night if there are rain delays. They are completed the next day other wise. Cricket used to have one day matches finish in the second day. But then then you had the rule of 25 overs and matches to be completed within that day.
We rely on some maths formula to get a score which is not apt. The match for example between India and Australia could have continued late into the night and no one would have minded.
I think there should be a rule to finish matches where feasible late into the night (say by 3 pm) or continue (and not reply as has been the case in some tournaments) the next day. Conditions may change but they may on the same day too. People would like to see a result not based on maths formula I think. If the matches dont finish by 3 AM, they can continue the next day from 2-3 PM and if it cant still be completed, the match can be abandoned.
The D/L system, though calculates fairly some times, is not a solution. Nor is the 25 over rule.
If a tennis player was leading 2 sets to one and rain occured, awarding the match to the player leading would be ridiculous.