N. Raghavendra wrote on 05/17/2018 03:29 PM:
I think 3 is the most attractive possibility,
Agreed. #1 and #2 are for gracefully handling backward compatibility, and for accommodating a decentralized volunteer model.
One way that #2 is volunteer-friendly is that, I suggest, for example, someone who is using the SSAX parser in their own work might have had an itch to separate it out from the `sxml` package for years, and to make a few interface tweaks that would break the `sxml` package, and they might be willing to toss in a bit of altruism and community giveback, by adding a polished Scribble file and releasing it to package catalog. (But not only altruistic: by putting the work into making it an attractive open source package, they benefit from bug fixes and such from other users.).
I suggest that this example of #2 might happen a lot sooner than one or more people trying to make a #3 end-all-be-all XML parser package, even if they start with SSAX code. (Example questions: "should it also handle `syntax?` objects?", "is this fully compatible with Racket idioms?", "what is every interface this should provide, and what should it look like?", "should we try to speed up I/O for some scenarios, by doing heavy surgery on the code?".) And #2 frees #3 effort from the pressure to support the original SSAX interface.
Also, in decentralized open source, a single Oleg library or topic can have more than one each of corresponding #2 and #3 efforts. One person might grab the `ssax` package name first, but that only means that separate efforts that wish they had that name need to pick different names, not that the name denotes some canonical effort, and everyone else should abandon their work. (The original PLaneT package system was decentralized-friendly in naming, with its author-qualified names, related to the DNS-domain-qualified names of Java at the time; don't be misled by the new flat namespace.) Recognizing this also relieves some of the pressure on any open source package effort -- you can try something without feeling it has the be the last word, or that it has to be designed by committee, unless that's what you want on that occasion.
-- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.