I'm calling for making Racket and package source transparently accessible, even though not actually bundled into distribution downloads...

Racket has a research and education bent, and also attracts some of the more sophisticated developers. For all of these audiences, there's a tradition of accessibility of source, and arguably value in that.

I think transparent navigability to source would be appropriate for Racket. Transparent navigability to source could mean that DrRacket will download source on-demand for any binary package that is installed, rather than source having to be bundled with the package, or requiring user to go get source separately.

Admittedly, I think source accessibility is not as important in Racket as in Emacs. (Because, for general programming, the Racket documentation is sufficient and the source wouldn't help. And for extension of the programming environment, which was one of Emacs's greatest achievements, extending DrRacket is much harder; plus, the DrRacket source is not much help if you didn't previously tackle the manuals on frameworks and such, which almost no one does.) But there are uses for source accessibility, especially for independent add-on packages, and the principle of being able to easily pop the hood still has value.

Example: Imagine I'm in the middle of writing a Racket program and am wondering about characteristics of some kind of I/O port in Racket. With transparent source accessibility, I can just click on an identifier in my program in DrRacket to start browsing the implementation. Maybe I see a possible improvement, or seeing the source pre-empts yet another email list question that otherwise only Matthew could answer, or I feel empowered to go add a new feature. If the source is not as accessible, then I'm more likely to be a mere naive user of the tools, rather than to understand the tools and help improve them.

Side note: I'm also looking forward to seeing how this new packaging works out, especially if it leads to me being able to ship small binary packages for iPhone/Mac/Windows, implemented in Racket. (I don't care about open source principles on those very closed platforms; I just want their money. Which is totally different from what I want from an intellectually-inclined open source development platform.)

Neil V.

_________________________
 Racket Developers list:
 http://lists.racket-lang.org/dev

Reply via email to