\d h \l a \l t \l x comb:{apply@(type comb21[two@\$**X]@)'Tokens comb12[two@\$**X]x} two:{x@&1<#:'x} comb21:{(x,,y)((2#*:)'x)?y} comb12:{_ssr/[y;{:["*"=x 1;x[0],"[*]";x]}'x;(2#*:)'x]} apply:{*(pair .)/(();x)} pair:{:[~#y;(x;y);~`"("~*y;(:[#x;({};x;*y);*y];1_ y);(({};x;apply 1_ i#y);((1+i:group y)_ y))]} group:{(=/+\'x~\:/:`\$'"()")?1} N:"0123456789" num:{(x[0]_in"-.",N)&|/N _lin x} V:".-_~!@#\$%^&*=+|<,>?" A:"/\\'" A_:\$`converge`Converge`loop`Loop system:{x _in \$`cond`cons`head`tail`eq} verb:{(x[0]_in V)&1=#x} project:{[x](x[0]_in V)&"."=*1_ x} unary:{(x[0]_in V)&":"=*1_ x} adverb:{(x _in 2#A_)|(x[0]_in A)&(1=#x)|:[2=#x;":"=*1_ x;0]} binary:{(x _in 2_ A_)|(x[0]_in A)&:[1<#x;"."=x 1;0]} combinator:{(_ic[*x]_in 65+!26)&:[1<#x;&/(1_ x)_lin"'*";1]} sym:{atom`\$1_'(&x="`")_ x} atom:{:[1=#x;*x;x]} type:{ :[x[0]_in"()" ;`\$*x "nil"~x ;({`n};()) "null"~x ;({`n};) "nan"~x ;({`n};0n) "Nan"~x ;({`n};0N) "inf"~x ;({`n};0i) "Inf"~x ;({`n};0I) "`"=*x ;({`n};sym x) "\""=*x ;({`n};. x) system x ;. 1!"}{`",x combinator x ;`\$x num x ;({`n};. x) verb x ;({`v};. x) project x ;({`v};.-1!x,"[;x]}{") unary x ;({`u};. x) adverb x ;({`a};. A1 x) binary x ;({`b};. A2 x) `\$x]} \d ^ Comb:h.comb