fake.modules transposition for aspect-oriented Dendritic Nix. with cross-aspect dependencies. Discussions: https://oeiuwq.zulipchat.com/join/nqp26cd4kngon6mo3ncgnuap/
dendrix.oeiuwq.com/Dendritic.html
dendritic
nix
aspect
oriented
1lib: aspects:
2let
3 transpose = import ./. { inherit lib emit; };
4 emit =
5 transposed:
6 let
7 aspect = aspects.${transposed.child};
8 in
9 [
10 {
11 inherit (transposed) parent child;
12 value = aspect.resolve { class = transposed.parent; };
13 }
14 ];
15in
16{
17 transposed = transpose aspects;
18}