+1 I think we did OK in CLIM: an API package, and an internal package to implement in.
--Scott > On Aug 25, 2018, at 7:53 PM, Ken Tilton <kentil...@gmail.com> wrote: > > Packages are massively overrated. This is not Java where every frickin source > file is a namespace. There is a certain obsessive compulsiveness about > packages that does nothing but slow developers down. Well, right, they are a > palliative for the OCD disease. But it *is* a disease, so that does not count. > > What part of agile do we not understand? Fences, boxes, categories, types all > invented for their own sake let us bask in our taxonomicity while getting no > code written, and god help the sucker who tries to use our OCD mess forever > battling package issues. > > Stop. Wrong way. Go back. > >> On Tue, Aug 21, 2018 at 6:36 PM, Daniel Pezely <dan...@pezely.com> wrote: >> I posted this to Stack Overflow but was hoping for more input. >> https://stackoverflow.com/questions/51638864/common-lisp-style-multiple-packages-in-same-repo >> >> >> May I get recommendations or links to representative code repositories with >> good style for multiple related Common Lisp packages, please? >> >> For instance, consider a high-level workflow library with accompanying >> lower-level API, each in its own CL package but same git repo due to >> synchronized releases. >> >> Each system (*.asd file) isolates tests and may be invoked using: >> >> (asdf:test-system foo :force t) >> >> Separate systems may be built via make, which definitely helps isolate SBCL >> code-coverage reports. >> >> Some users of the library may only want to load the lower-level API. For >> simplifying dependencies for those using higher-level API, it seems >> best to keep everything bundled in one repo. Any revision to one library >> would likely require updating all for the same release. >> >> I currently have a single directory tree with a subdirectory for each CL >> package. There's a top-level Makefile plus one in each subdirectory that the >> library maintain would use. The top-level also contains symbolic links for >> .asd files pointing into relevant subdirectories. (It's a library deeply >> dependent upon POSIX calls via uiop-posix, so it's only applicable on an OS >> with sym-links.) >> >> This seems to be an issue at large considering issue #1 for Quicklisp-docs >> [0]. >> >> Found nothing relevant in Google's CL style guide [1], State of the Common >> Lisp Ecosystem, 2015 [2], Edi's CL Recipes [3] or Lisp-lang [4]. Browsing >> repos seem to have quite a mix of styles. >> >> [0] https://github.com/rudolfochrist/quicklisp-docs/issues/1 >> [1] https://google.github.io/styleguide/lispguide.xml >> [2] >> https://web.archive.org/web/20160305061250/http://eudoxia.me/article/common-lisp-sotu-2015/ >> [3] http://weitz.de/cl-recipes/ >> [4] http://lisp-lang.org/learn/writing-libraries but see also their section >> on Continuous Integration >> Repo to be fixed: https://gitlab.com/dpezely/cl-mmap >> (commit a23bd88d of 2018-07-14; release will be tagged when fixed) >> >> Thanks, >> -Daniel >> > > > > -- > Kenneth Tilton > http://tiltontec.com/