|
Boost : |
From: Val Samko (boost_at_[hidden])
Date: 2004-04-14 07:04:34
Jeff,
Wednesday, April 14, 2004, 5:05:37 AM, you wrote:
JG> I can see the bug report now:
JG> void f(date& d)
JG> {
JG> //...
JG> d = add_month(d);
JG> }
JG> //somewhere else in program
JG> date d(...);
JG> f(d);
JG> f(d); //oops I really wanted add_month(d,2) behavior
JG> Point is that in a 5 line program it is obvious -- in a million line program
JG> not necessarily so.
The only requirement for the add_month function I have is that
after d2 = add_month(add_month(d1, N), -N),
d1 and d2 should be in the same month.
Someone developing a million line program should understand that
add_month(add_month(d, 1), 1) may be not the same day as
add_month(d, 2).
JG> This email thread seems to be writing the repsonse to the FAQ:
JG> Q: Why is there no add_month function in the library?
JG> A: Because we can't agree on what it means...
Does that mean that add_month won't be implemented? What if we call
it inc_month, instead of add_month? inc_month (Increase Month)
in no way assumes that the day of the month will stay the same,
it will just increase the month.
Val Samko
http://val.digiways.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk