On 14 December 2012 00:57, Raul Miller <[email protected]> wrote:
> I consider it a final authority on the results produced, but not the
> algorithms.
Precisely. As there is no algorithm specified as obligatory method
of implementation, it is incorrect to associate #. with Horner's rule.
> So, in that
> sense, the implementation specified in the DoJ is better.
There is no implementation specified in the DoJ. The DoJ defines
what the *result* from #. should conform with, but not necessarily
how it is obtained. And, if #. is indeed implemented as an inner
product, it can easily be faster than the Horner's method, as the
former lends itself to parallel execution which the latter cannot.
> I have a problem with how you have phrased this -- I cannot
> agree that the word "implementation" does not refer to the
> implementation.
You have significantly distorted my words, as can be easily seen.
And my phrasing is correct: when you say '#. implements Horner's
rule' it must be clear that the word you used, 'implements', cannot
refer to how #. itself is implemented – it is one thing how something
is implemented, and quite another how it can be used to implement
other things. To not recognize this difference is a conceptual
fallacy.
> That said, rosettacode is supposed to be focused on specifications of
> results rather than the details of how they are achieved -- otherwise
> cross language comparisons become meaningless.
It seems to me that if the title is
"Horner's rule for polynomial evaluation"
then the posted code must implement the Horner's rule for polynomial
evaluation and not just any polynomial evaluation or whatever else.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm