A human rights campaigner has said it is "shocking" that a history professor had made a "homophobic slur" against the economist John Maynard Keynes.
The Scots-born Harvard professor said Keynes, who died in 1946, did not care about the future of society because he was gay and had no children.
He has apologised "unreservedly" for the comments at a conference in California on Thursday.
He was asked to react to Keynes's observation that "in the long run we are all dead". In off-the-cuff remarks during a question and answer session, Professor Ferguson suggested Keynes was indifferent to the long run because he had no children, and that he had no children because he was gay.
But in a statement on his website, he said it was obvious that people who do not have children also care about future generations. He also insisted he was not homophobic.
"My disagreements with Keynes's economic philosophy have never had anything to do with his sexual orientation," he said. "It is simply false to suggest, as I did, that his approach to economic policy was inspired by any aspect of his personal life. As those who know me and my work are well aware, I detest all prejudice, sexual or otherwise."
In 1925, Keynes married a Russian ballerina, Lydia Lopokova, and Professor Ferguson said he had forgotten that she had miscarried.
Mr Tatchell said: "I'm glad Ferguson has apologised for his homophobic slur against Keynes. However, it is shocking that such casual homophobia apparently exists in high academia. His remarks are what we might expect from a pub bigot, not from a Harvard history professor.
"The idea that Keynes was unconcerned about future generations is offensive nonsense. His economic theories were motivated by a love of humanity and a concern for present and future public welfare."