Amb: Difference between revisions

Content deleted Content added
Langurmonkey (talk | contribs)
Langurmonkey (talk | contribs)
 
Line 2,450:
This would build every valid set, but for the sample data, there's only one.
 
<syntaxhighlight lang="langur">val .wordsets = [
fw/the that a/,
fw/frog elephant thing/,
Line 2,457:
]
 
val .alljoin = fn .words: for[=true] .i of len(.words)-1 {
if .words[.i][-1] != .words[.i+1][1]: break = false
}
 
# .amb expects 2 or more arguments
val .amb = fn( ...[2..] .words): {if if(.alljoin(.words): { join " ", .words) }
 
writeln join ("\n", filter (mapX .(amb, .wordsets...)))
</syntaxhighlight>