On Sun, Jan 29, 2017 at 11:15 AM, Gilles <gil...@harfang.homelinux.org>
wrote:

> On Sun, 29 Jan 2017 10:36:07 -0500, Raymond DeCampo wrote:
>
>> On Sat, Jan 28, 2017 at 7:00 PM, Gilles <gil...@harfang.homelinux.org>
>> wrote:
>>
>> Hi.
>>>
>>> On Sat, 28 Jan 2017 14:38:21 -0500, Raymond DeCampo wrote:
>>>
>>> [...]
>>>>
>>>>>
>>>>> Now, for the contents of the "fraction" module.
>>>>>
>>>>> (1)
>>>>> My main current concern is the formatting-related classes; as for
>>>>> "complex", I think that
>>>>>  1. formatting (and I/O) is out of scope, and
>>>>>  2. the implementation were problematic in CM already.
>>>>> Hence, I'd prefer to drop support altogether.[1]
>>>>>
>>>>>
>>>>> I see your point of view, but allow me to play devil's advocate.  It
>>>>>
>>>> seems
>>>> natural to create the formatter for a new object, in particular a number
>>>> type, close to the type itself.  Making new objects and expecting
>>>> another
>>>> project to implement the formatting seems like what economists call an
>>>> externality.  I suppose it really depends how everyone maintaining text
>>>> would feel about it.  I am somewhat concerned about how the release
>>>> cycle
>>>> would work, in particular for the initial released, where text would
>>>> have
>>>> to wait for a release of numbers before including the formatting and
>>>> then
>>>> users would not have formatting until the next release of text.
>>>>
>>>> That said if the people maintaining text agree I have no objection.
>>>>
>>>>
>>> [Text] is also a new component. It is not unthinkable that its scope
>>> can encompass flexible formatting of such things as "fractions".
>>>
>>>
>> At the risk of raising a sore subject, wasn't the expectations of third
>> parties that someone else maintain code for them part of the impetus for
>> the current effort?
>>
>
> I'm not sure I understand what you wrote here.
>
> So shouldn't we get buy-in from the commons-text team
>> before we make a decision?
>>
>
> My proposal does not imply that someone else should implement
> the code.
>
> For example, if you feel confident that the input parsing and
> output formatting classes are useful and well implemented, you
> can start a discussion on this ML (with subject prefix [Text]),
> to inquire about objections to moving them to [Text].
> It seems that it was informally agreed that [Text] is a somewhat
> higher level component, i.e. that it can have runtime dependencies.
>
> As suggested, someone having a clear idea of what would be the use
>>> cases for formatting fraction, complex, and the likes, can create a
>>> new "commons-text-math-formatting" module (that would depend on the
>>> necessary modules from [Numbers]).
>>> From my experience with them, the formatting class from [Math] are
>>> not worth keeping.
>>> A lot of other codes should IMHO be given higher priority.
>>>
>>
>>
>> My point is that, generally, people using "fraction" can do with the
>>> constructors (to input data) and the accessors (to read result).
>>> Moreover, developers of "fraction" usually would not want to spend
>>> inordinate amounts of time to satisfy new formatting requests (that
>>> tend to translate into hundreds of lines of code, cf. CM).
>>>
>>>
>> The existence of some formats shouldn't result in an obligation to support
>> whatever formats are requested.
>>
>
> Certainly.
> But it is easier to justify as "out of scope", rather than "we don't
> care about format X".
> Then if someone comes up with a good library that can handle the
> "Commons Numbers" types, our incomplete code will become obsolete,
> and any work put in it will have been useless. The question is:
> Are there _currently_ any use-cases for it?
>
> If there aren't, please let's not rush to add it to the new component.
>
>
>>> The formatting code itself is not part of the concept, and so IMO
>>> effectively out of scope.
>>> There is no more sense to output "ugly" ASCII than there would be
>>> to generate any other output formats that would be more suited to
>>> represent mathematical concept (e.g. LaTeX).
>>>
>>> For logging and debugging purpose, "toString" should be quite fine.
>>>
>>>
>> I imagine that the greater value is in the parsing portion of the format
>> classes, not the output portion.
>>
>
> I do not have enough imagination. ;-)
>
>
Well the first use-case that comes to my mind is accepting user input from
some kind of GUI and turning it into a Fraction instance.  The second would
be extracting Fraction values from some kind of text representation, e.g.
CSV file, XML, etc.

But I think we are reaching the end of the useful phase of the discussion
so that said, I don't really have strong feelings on the matter.  I would
leave it in were it up to me but I wouldn't oppose you if you wanted to
take it out.

Reply via email to