<br><br><div class="gmail_quote">2011/8/19 Neil Van Dyke <span dir="ltr">&lt;<a href="mailto:neil@neilvandyke.org">neil@neilvandyke.org</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
I don&#39;t know the internals of PLaneT, so I can&#39;t really be helpful here.  The vague idea I had seems pretty usual: abstract the interface that talks to the repository, break up the existing client-side implementation code (e.g., fetch package from repository, install package, query information, etc.) into a few big chunks that can be called by the default plugin or composed by user-provided plugins, then provide the plugin interface (perhaps as one or more parameters storing callback procs for things like require-a-package or fetch-info-about-a-package or whatever is needed by PLaneT; or single parameter storing struct of multiple callback procs).<br>
</blockquote><div><br></div><div><div>I would love to be able to write</div><div>     (require (github dyoo/whalesong/<span class="Apple-style-span" style="font-family: Monaco, &#39;Courier New&#39;, &#39;DejaVu Sans Mono&#39;, &#39;Bitstream Vera Sans Mono&#39;, monospace; font-size: 11px; line-height: 17px; background-color: rgb(255, 255, 255); "><a href="https://github.com/dyoo/whalesong/commit/77bb781c8dc12bd8a229edd6e717ae1709c4b398" class="js-commit-link" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">77bb781c8dc12bd8a229</a>))</span></div>
<div>to use a specific commit directly from GitHub.</div></div><div><br></div><div>-- </div><div>Jens Axel Søgaard</div><div><br></div></div>