Ist es möglich, nach einem Diagramm zu suchen, das mit der Bindungsstrategie erstellt wurde?

Die Bindungsstrategie kann zum Erstellen von Diagrammen verwendet werden, z. B. anhand eines einfachen zweischneidigen Diagramms:

data Node = Node Node Node

-- a - b
-- |   |
-- c - d
square = a where
    a = Node b c
    b = Node a d
    c = Node a d
    d = Node b c

Diese Strategie ist ziemlich elegant, aber ich konnte keinen Weg finden, sie tatsächlich ohne Int-Labels zu verwenden. Wie könnte ich zum Beispiel eine Funktion schreiben, die die Anzahl der Knoten auf dem @ zählsquare Wert

countNodes :: Node -> Int
countNodes = ... ??? ...

main = print $ countNodes square
-- output: 4

Antworten auf die Frage(6)

Ihre Antwort auf die Frage