>WITH CREATEOBJECT("age") > > .CalcAge({^1988/2/29} , {^2006/09/21 }) > > CLEAR > > ? .Years , .Months , .Days > * CHECK with the correct definition Age = (((Birth+Y)+M)+D) > ? GOMONTH(GOMONTH({^1988/2/29},.Years*12),.Months)+.Days > * CHECK with a bad definition > ? GOMONTH({^1988/2/29},.Years*12+.Months) + .Days > ? gomonth(GOMONTH({^2006/09/21} - .Days, - .Months), - .Years *12) >ENDWITH18 years, 6 months and 22 days. Correct. I don't understand why you say it's a bad definition. Use pen and pencil.