[riot-notifications] [RIOT-OS/RIOT] Define requirements for configuration in the build system (#14027)
notifications at github.com
Wed May 6 10:55:19 CEST 2020
>Spoken like coming out of programming 101. Good luck modeling RIOT's current dependencies with that.
well, better don't skip programming 101, hm?
>There are quite some circular dependencies in RIOT atm. Out of my head, core depends on auto_init. auto_init depends on everything, everything depends on core. Or gnrc depends on gnrc_pktbuf, which depends on gnrc_pkt, which depends on gnrc.
There are different "kinds" of dependencies (A also selects B, A uses header of B, A uses symbols from B, ...). Some are naturally circular. I don't buy "programming 101 dictates that we have to do without".
Great. Identifying the problems is the first step. We should use this discourse to exchange proper arguments for or against the subject. I don't want a circular reasoning ..
> Or gnrc depends on gnrc_pktbuf, which depends on gnrc_pkt, which depends on gnrc.
Not sure it is that simple. There are many modules within GNRC that, to my knowledge, follow an acyclic dependency resolution. @miri64 can probably say more on this topic ..
>There are different "kinds" of dependencies (A also selects B, A uses header of B, A uses symbols from B, ...). Some are naturally circular.
But all these "kinds" of dependencies have nothing to do with cycle vs acycle, or am I not seeing something?
>And believe me, in practice, disallowing seemingly valid circular dependencies is a huge aspect of dependency hell.
Sorry, I still have to disagree on this point. What would be a valid circular dependency? And what do we gain from that?
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the notifications