[AstroPy] Proliferating py-astro-libs
perry at stsci.edu
Sat Jun 11 10:54:27 EDT 2011
On Jun 11, 2011, at 2:03 AM, Joe Harrington wrote:
> Responding quickly to Perry...
> I like the matplotlib approach to the IDL problem: Implement it right
> first. Then write compatibility wrappers that look like IDL. These
> keep old code alive without requiring maintenance of two full
Ideally, yes. But the simple fact is that it is much simpler to do a
literal translation. When the 'right' solution doesn't appear quickly
enough there are many who are willing to do the easy thing (and may
not have time or the expertise to do the right thing). Are we to say
"no, you must wait for the right approach"? And I do mean that it is
much easier. Doing it right means understanding most of the uses of
the objects involved in order to figure out how best to do the design
and even then a few iterations may be needed to get a good design. So
I can see where the literal approach can solve some people's problem
in the meantime.
It's easy to point to matplotlib to say that was the right way to do
it. It misses the fact that there were several years of failed
approaches before it appeared. And even in matplotlib, if you were to
ask John Hunter, would have done some things differently now (and it
has had some significant refactorings besides).
> I dislike the SAGE approach. It installs too much, and not enough,
> both at the same time! Base classes, small and independent packages,
> meta-packages that have dependencies on a selection of real packages
> and thus look like monolithic systems you can easily extend, all done
> at the package-manager level. Tests. Docs. A small start but with a
> big and straightforward design. This is the way to go.
Well, note I said Sage-like, not Sage. Sage itself I think is
essentially monolithic. We aren't talking about anything like its
size. We would like to use some of its tools and approaches. And we
intend for it to allow upgrades and additions. They have had good
success with installation though. Am I 100% certain this is the right
approach? No, but it's what we are going to try given our resources.
As I've said before, this is a notoriously hard problem. If it wasn't
it would have been solved already by many other in many other fields.
There will be no perfect solution (I feel confident in this
prediction). No one is stopping others from trying approaches they
feel are superior.
More information about the AstroPy