This suggests to me that new programming idioms are needed in which concepts are supported in a more direct and modular fashion in the code. It’s not just about dependencies, but also about how the code is organized. Note that in the first object-oriented idiom that I suggested—the naive one that every novice would use, in which Post has an addComment method—the implementation of the comment concept is unfortunately split across classes, since the Post class includes the mapping between posts and comments, a structure that belongs to the comment concept and not to the post concept. A code
...more