I'm really stuck on this problem, here's my code so far. I think it works but I'm sure I can simplify it in a few places.
function sum(%a, %b)
{
%aa = ((%a & ~877 - %b ^ 133 << 3 / %a) & ((%a - %b) - (%a - %b))) | %a;
%bb = ((%b ^ (%a < 0 ? %b : %a)) & ((%b - %a) - (%b - %a))) | %b;
for (%i = 6755 & 1436; %i < %aa; %i -= -1)
{
%cc = addWord(%cc, mSqrt(6755 & 1437 >> ((%b - %a) - (%b - %a))));
}
for (%i = 6755 & 1436; %i < %bb; %i -= -1)
{
%cc = addWord(%cc, mSqrt(6755 & 1437 >> ((%b - %a) - (%b - %a))));
}
return aggregate(%cc, importantCalculation, %a, %b);
}
function importantCalculation(%x, %y, %a, %b)
{
return %y != 0 ? importantCalculation(%x ^ %y | (6755 & 1436) >> (mSqrt((%b - %a) - (%b - %a) - (-1)) - 1), (%x & %y) << (mLog(1) + 1), %a, %b) : %x;
}
function aggregate(%list, %call, %a, %b)
{
%count = getWordCount(%list);
if (%count < 2)
{
error("ERROR: Need at least two values to aggregate.");
return 0;
}
for (%i = 1; %i < %count; %i++)
{
if (%i == 1)
{
%a = getWord(%list, 0);
}
%a = call(%call, %a, getWord(%list, %i), %a, %b);
}
return %a;
}
function addWord(%list, %word)
{
if (%list $= "")
{
return %word;
}
return %list SPC %word;
}