Hi Nathann,
The trac seems to be down for me, so I write here.
What you propose is a misnaming of the object, akin to, say, creation of a Sage function that returns for given n the next prime power, NextPrimePower, but then you actually make it return next power of 2.
Your function returns a Desarguesian projective plane, and this term and the order of the plane characterize it uniquely.
Then name it properly...
Dima
#15107: Projective Plane designs
-------------------------+-------------------------------------------------
Reporter: | Owner:
ncohen | Status: needs_review
Type: | Milestone: sage-6.1
enhancement | Resolution:
Priority: major | Merged in:
Component: | Reviewers:
combinatorics | Work issues:
Keywords: | Commit:
Authors: | cf71d58dedd357692ea90749090adee9ffadd629
Nathann Cohen | Stopgaps:
Report Upstream: N/A |
Branch: |
u/ncohen/15107 |
Dependencies: |
-------------------------+-------------------------------------------------
Comment (by ncohen):
Helloooooo !
Well, the purpose of this function is to return a projective plane design,
i.e. a `d^2+d+1, d+1` BIBD.
I agree with what you said. Actually, thinking about it again, I don't
agree with what Dima said above. I don't see the problem with calling this
`ProjectivePlaneDesign`, as I need a function which returns a projective
plane design. Changing the name just makes it harder to find when one
looks for it `>_<`
What do you think ?
I think that this alias is useful, but I personally spent quite some time
trying to figure out of to obtain a projective plane design with Sage.
Nathann
--
Ticket URL: <http://trac.sagemath.org/ticket/15107#comment:14>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, and MATLAB
Nathann,
If you know what you are doing it is not hard to find. Unless of course you receive all the knowledge by hitting TAB :)
OK, name it ProjectivePlanePappian, to satisfy your TAB-happy fingers...
Oh well, the fact that you already put a bunch of misnamed stuff into Sage does not mean that you should keep doing this and keep confusing other potential users... Cf our previous disputes about LP vs Integer LP....
On 4 Jan 2014 21:43, "Nathann Cohen" <nathan...@gmail.com> wrote:
>
> > If you know what you are doing it is not hard to find. Unless of course you receive all the knowledge by hitting TAB :)
> > OK, name it ProjectivePlanePappian, to satisfy your TAB-happy fingers...
> >
> > Oh well, the fact that you already put a bunch of misnamed stuff into Sage does not mean that you should keep doing this and keep confusing other potential users... Cf our previous disputes about LP vs Integer LP....
>
> Dima, you started this thread by claiming I was writing a function which did not return what it claims to return.
> This designs.ProjectivePlaneDesign returns a projective plane design. I hope that is clear.
>
>
> > Oh well, the fact that you already put a bunch of misnamed stuff into Sage does not mean that you should keep doing this and keep confusing other potential users...
> How can you call that misnamed ? A function "steiner_triple_system" which returns a steiner triple system ? Really ?
So what. I can also say that it returns a set system. Why don't you call it setsystemblahblah, a name that only makes sense to you ☺
>
>
> > Cf our previous disputes about LP vs Integer LP....
> Well, didn't I fix that since ? I anything, it shows I put my liking aside when it is not natural for others. Same with #15482, that I implemented myself, because it confused others.
So people are telling you to fix your design now, and not later...
And you start screaming at them in response.
The fact that you did misname things in the past does not mean you can keep doing this...
"Officer, why are you booking me? You ran a red light! Huh, I did this 50 times, and nobody booked me before" kind of thing...
David,
Your proposal of a default parameter might actually be more flexible, as it is easy to extend, codewise.
Dima
I think you have misunderstood my complaint, as it was about the function returning much more specific thing than asked. You hijack a generic name for something specific. I tried to explain this by an analogy with misnamed NextPrimePower, actually returning NextPrimePower_OF_TWO, which is obviously a better name.
One unpleasant side effect of your present design is that it is harder than necessary to extend to cover other projective planes, as you hijack the generic name for no good reason, except your convenience :)
>
> Nathann
Sure I do. The argument "Pappian" serves as documentation here, for the time being, it's not absolutely NOTHING...
>
> Nathann
Perhaps even better would be to have one more level of classes, i.e.
designs.ProjectivePlaneDesign.Pappian()
designs.ProjectivePlaneDesign.Hall()
etc
Even better,
drop "Design" part....
> >
> > Nathann