|
92 | 92 | #has (function (_ [focus context])
|
93 | 93 | (revised outer (has inner focus) context))])
|
94 | 94 |
|
95 |
| -(comment |
96 |
| - (every .public (Aspect external_cause external_effect internal_cause internal_effect) |
97 |
| - (for_any (_ it) |
98 |
| - (-> [(pro.Functor it) (pro.Cartesian it)] |
99 |
| - (//.Aspect it external_cause external_effect internal_cause internal_effect)))) |
100 |
| - |
101 |
| - (the functor |
102 |
| - (for_any (_ internal_cause internal_effect) |
103 |
| - (pro.Functor (Property' internal_cause internal_effect))) |
104 |
| - (implementation |
105 |
| - (the (each before after [/#its /#has]) |
106 |
| - (..property' (|>> before |
107 |
| - /#its) |
108 |
| - (|>> (product.then function.identity before) |
109 |
| - /#has |
110 |
| - after))))) |
111 |
| - |
112 |
| - (the cartesian |
113 |
| - (for_any (_ internal_cause internal_effect) |
114 |
| - (pro.Cartesian (Property' internal_cause internal_effect))) |
115 |
| - (implementation |
116 |
| - (the (in_left [/#its /#has]) |
117 |
| - (..property' (|>> product.left |
118 |
| - /#its) |
119 |
| - (product.forked (|>> (product.then function.identity product.left) |
120 |
| - /#has) |
121 |
| - (|>> product.right |
122 |
| - product.right)))) |
123 |
| - (the (in_right [/#its /#has]) |
124 |
| - (..property' (|>> product.right |
125 |
| - /#its) |
126 |
| - (product.forked (|>> product.right |
127 |
| - product.left) |
128 |
| - (|>> (product.then function.identity product.right) |
129 |
| - /#has)))))) |
130 |
| - |
131 |
| - (the .public (as_property [/#its /#has] |
132 |
| - [pro_functor cartesian]) |
133 |
| - (for_any (_ internal_cause internal_effect external_cause external_effect) |
134 |
| - (-> (Property' internal_cause internal_effect external_cause external_effect) |
135 |
| - (Aspect internal_cause internal_effect external_cause external_effect))) |
136 |
| - (<| (.with pro_functor) |
137 |
| - (.with cartesian) |
138 |
| - (|>> in_left |
139 |
| - (each (product.forked /#its function.identity) /#has)))) |
140 |
| - |
141 |
| - (the .public (as_property' it) |
142 |
| - (for_any (_ internal_cause internal_effect external_cause external_effect) |
143 |
| - (-> (Aspect internal_cause internal_effect external_cause external_effect (Property' internal_cause internal_effect)) |
144 |
| - (Property' internal_cause internal_effect external_cause external_effect))) |
145 |
| - (it [..functor ..cartesian] |
146 |
| - ..identity)) |
147 |
| - ) |
| 95 | +(every .public (Aspect context context' focus focus') |
| 96 | + (for_any (_ it) |
| 97 | + (-> [(pro.Functor it) (pro.Cartesian it)] |
| 98 | + (//.Aspect it context context' focus focus')))) |
| 99 | + |
| 100 | +(the functor |
| 101 | + (for_any (_ focus focus') |
| 102 | + (pro.Functor (for_any (_ context context') |
| 103 | + (Property' context context' |
| 104 | + focus focus')))) |
| 105 | + (implementation |
| 106 | + (the (each before after [/#its /#has]) |
| 107 | + [#its (|>> before |
| 108 | + /#its) |
| 109 | + #has (|>> (product.then function.identity before) |
| 110 | + /#has |
| 111 | + after)]))) |
| 112 | + |
| 113 | +(the cartesian |
| 114 | + (for_any (_ focus focus') |
| 115 | + (pro.Cartesian (for_any (_ context context') |
| 116 | + (Property' context context' |
| 117 | + focus focus')))) |
| 118 | + (implementation |
| 119 | + (the (in_left [/#its /#has]) |
| 120 | + [#its (|>> product.left |
| 121 | + /#its) |
| 122 | + #has (product.forked (|>> (product.then function.identity product.left) |
| 123 | + /#has) |
| 124 | + (|>> product.right |
| 125 | + product.right))]) |
| 126 | + (the (in_right [/#its /#has]) |
| 127 | + [#its (|>> product.right |
| 128 | + /#its) |
| 129 | + #has (product.forked (|>> product.right |
| 130 | + product.left) |
| 131 | + (|>> (product.then function.identity product.right) |
| 132 | + /#has))]))) |
| 133 | + |
| 134 | +(the .public (as_aspect [/#its /#has] |
| 135 | + [pro_functor cartesian]) |
| 136 | + (for_any (_ context context' focus focus') |
| 137 | + (-> (Property' context context' focus focus') |
| 138 | + (Aspect context context' focus focus'))) |
| 139 | + (<| (with pro_functor) |
| 140 | + (with cartesian) |
| 141 | + (|>> in_left |
| 142 | + (each (product.forked /#its function.identity) /#has)))) |
| 143 | + |
| 144 | +(the .public (of_aspect it) |
| 145 | + (for_any (_ context context' focus focus') |
| 146 | + (-> (Aspect context context' focus focus' (for_any (_ context context') |
| 147 | + (Property' context context' focus focus'))) |
| 148 | + (Property' context context' focus focus'))) |
| 149 | + (it [..functor ..cartesian] |
| 150 | + [#its function.identity |
| 151 | + #has product.left])) |
0 commit comments