Gilles created TEXT-36:
--------------------------
Summary: Dependency on "Commons RNG"
Key: TEXT-36
URL: https://issues.apache.org/jira/browse/TEXT-36
Project: Commons Text
Issue Type: Improvement
Reporter: Gilles
Fix For: 1.0
This is a follow-up of a
[discussion|https://issues.apache.org/jira/browse/TEXT-34?focusedCommentId=15762623&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15762623]
held in TEXT-34.
IMHO, there is no harm in depending on the ["commons-rng-client-api"
module|http://commons.apache.org/proper/commons-rng/commons-rng-client-api/javadocs/api-1.0/index.html]
of Commons RNG; the "zero dependency" mantra does not hold here, since TEXT
already depends on LANG.
OTOH, I see that it is counter-productive (i.e. it harms the Commons project as
a whole) to not advertize or use other Commons components, despite the "own dog
food" phrase appearing recurrently on the "dev" ML.
Rather than having people blindly use {{java.util.Random}}, we should allow
them to choose wisely, based on full information.
IMO, that means to indeed use {{UniformRandomProvider}} in order to raise
awareness about alternatives to the sub-optimal algorithm used by the JDK.
However, if some Commons developers do not trust that the
{{UniformRandomProvider}} interface can be stable enough for TEXT, then we
should follow Jochen Wiedemann's advice (cf. archive of the "dev" ML) and
define TEXT's own interface to random numbers, with bridges to it from
{{UniformRandomProvider}} and from {{java.util.Random}}.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)