On Tue, Mar 27, 2018 at 3:17 PM, James E Keenan <jkee...@pobox.com> wrote:
> A few weeks ago I made a presentation to the Philadelphia Perlmongers
> (http://thenceforward.net/perl/talks/phlpm20180312/index.html) on the
> subject "Testing CPAN against the Perl 5 Core Distribution:  Where Do We
> Stand?".  In that presentation, I sketched the concept of the CPAN river and
> described it as a directed acyclic graph (DAG)
> (http://thenceforward.net/perl/talks/phlpm20180312/slide017.html), using one
> of Neil Bower's images to make that point.
>
> In the discussion afterwards, a prominent former COBOL programmer suggested
> that there was nothing to exclude the possibility of circular dependencies
> among CPAN distributions.  A could depend on B, which depends on C, which
> depends on A.  If so, we would have a cyclic graph. Wouldn't that undermine
> the concept of the CPAN river, he asked.
>
> Since all I know about DAGs I got from reading Wikipedia and the
> documentation to Jarkko's Graph.pm module, I didn't have a good response.
> So I promised to ask the question here.
>
> * Can CPAN be cyclic?
>
> * If so, then does that mean that, when we speak of CPAN as a river, we are
> *imposing* DAG-ness on it by means of the algorithm(s) with which we
> calculate the river (e.g., https://github.com/dagolden/zzz-index-cpan-meta)?

There have been cases of circular dependencies in the past, though no
CPAN client will handle them nicely anyway so they should iron out by
themselves.

I don't think it undermines the concept of the river, though it
probably does complicate the calculation.

Leon

Reply via email to