!7 sS inputDiagrams = [[ CirclesAndLines(circles=[Circle(text="Find", x=d("0.42219020172910665"), y=d("0.1644100580270793")), Circle(text="standard function", x=d("0.659942363112392"), y=d("0.28239845261121854"))], lines=[Arrow(a=t5, b=t26, text="")]) CirclesAndLines(circles=[Circle(text="A standard function that finds", x=d("0.3011527377521614"), y=d("0.2688588007736944")), Circle(text="standard functions", x=d("0.5561959654178674"), y=d("0.4448742746615087")), Circle(text="\"standardFunctionNames\"", x=d("0.7521613832853026"), y=d("0.6808510638297872"))], lines=[Arrow(a=t5, b=t26, text=""), Arrow(a=t26, b=t47, text="is")]) ]]; p { Web web = webFromCALStructures(inputDiagrams); showWeb(web); WebNode find = web_findNode(web, "Find"); WebNode op = web_operand(find); print("Finding a: " + op); S plural = plural(web_text(op)); print(plural); Pair finder = web_findTriple(web, "A standard function that finds", "", plural); print("Finder: " + finder); if (finder == null) fail("No finder"); S sfName = web_operandText(finder.b, "is"); if (sfName == null) fail("No sf"); print(sfName); O found = random((Collection) makeAndCall(sfName)); print("Found: " + sfu(found)); }