[ 
https://issues.apache.org/jira/browse/LUCENE-8012?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16288985#comment-16288985
 ] 

Alan Woodward commented on LUCENE-8012:
---------------------------------------

There are a couple of options here.  Just changing Explanation to internally 
hold a Number, but keeping .getValue() signed as a float improves the String 
representation but doesn't really help with precision loss in internal 
calculations.  Changing .getValue() to return a Number is a pretty invasive 
change though.  Another option would be to add an addition .getNumberValue() 
method, which would allow Sims, etc, to ask for their required precision.

> Improve Explanation class
> -------------------------
>
>                 Key: LUCENE-8012
>                 URL: https://issues.apache.org/jira/browse/LUCENE-8012
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Robert Muir
>              Labels: newdev
>
> Explanation class is currently nice and simple, and float matches the scoring 
> api, but this does not work well for debugging numerical errors of internal 
> calculations (it usually makes practical sense to use 64-bit double to avoid 
> issues).
> Also it makes for nasty formatting of integral values such as number of 
> tokens in the collection or even document's length, its just noise to see 
> {{10.0}} there instead of {{10}}, and scientific notation for e.g. number of 
> documents is just annoying. 
> One idea is to take Number instead of float? Then you could pass in the 
> correct numeric type (int,long,double,float) for internal calculations, 
> parameters, statistics, etc, and output would look nice.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to