Github user KellenSunderland commented on the issue: https://github.com/apache/incubator-joshua/pull/65 @kpu I partially agree about sentence. The sentence object is meant to be scoped to a single translation of a sentence. For calls to probRule this helps disambiguate. For estimate I'm not so sure. A rule can have estimateRuleCost called on it even when Joshua is not translation anything. For example as a result of calling sort on a grammar during startup before any requests are processed. In fact the only usage of estimate being called perviously was passing null as the argument for sentence. For the time being I'm creating the ChartState object once per call, and then immediately releasing it afterwards. We'll have to test the performance impact of doing this, but this shouldn't actually be called when decoding so hopefully it won't affect decoding perf.
--- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---