ロスパターソン:Arrows and Computationは(11ページ)trace機能が導入されています trace :: ((a, c) -> (b, c)) -> a -> b
trace f a = let (b, c) = f (a, c) in b
trace機能はcircular programsで魔法のフィードバックステップをモジュール化するのに便利です。例えば、リチャード
私のprevious questionで説明したように、あなたのノード上に何らかの種類の一意のラベルがない場合、結び目戦略を結んで作られた2つのグラフを異ならせることは不可能です。一例として、両刃のグラフを使用した: data Node = Node Int Node Node
square = a where
a = Node 0 b c
b = Node 1 a d