История изменений
Исправление monk, (текущая версия) :
Приведите пожалуйста пример устранения шаблонного кода, который можно устранить метапрограммированием, но средствами языка Java невозможно или очень проблематично?
if(f(aaa,bbb) + g(aaa,bbb) == c(aaa,bbb)) x(aaa,bbb)
else if(f(aaa,bbb) - g(aaa,bbb) == c(aaa,bbb)) y(aaa,bbb)
else if(f(aaa,bbb) * g(aaa,bbb) == c(aaa,bbb)) z(aaa,bbb)
else if(f(aaa,bbb) / g(aaa,bbb) == c(aaa,bbb)) k(aaa,bbb)
Через метапрограммирование можно получить что-то вроде
for_op({+,-,*,/}, aaa, bbb, f(..) %% g(..) == c(..), {x,y,z,k})
Исходная версия monk, :
Приведите пожалуйста пример устранения шаблонного кода, который можно устранить метапрограммированием, но средствами языка Java невозможно или очень проблематично?
if(f(aaa,bbb) + g(aaa,bbb) == c(aaa,bbb)) x(aaa,bbb)
else if(f(aaa,bbb) - g(aaa,bbb) == c(aaa,bbb)) y(aaa,bbb)
else if(f(aaa,bbb) * g(aaa,bbb) == c(aaa,bbb)) z(aaa,bbb)
else if(f(aaa,bbb) / g(aaa,bbb) == c(aaa,bbb)) k(aaa,bbb)
Через метапрограммирование можно получить что-то вроде
for_op({+,-,*,/}, f(aaa,bbb) %% g(aaa,bbb) == c(aaa,bbb), {x,y,z,k})