[ stack ] is args ( --> s ) [ stack ] is results ( --> s ) [ stack ] is function ( --> s ) [ args share times [ sp 2 /mod iff [ char t ] else [ char f ] emit ] drop say " | " ] is echoargs ( n --> ) [ args share times [ 2 /mod swap ] drop ] is preparestack ( n --> b*n ) [ results share times [ sp iff [ char t ] else [ char f ] emit ] ] is echoresults ( b*? --> ) [ say "Please input your function, preceded" cr $ "by the number of arguments and results: " input trim nextword quackery args put trim nextword quackery results put trim build function put args share bit times [ cr i^ echoargs i^ preparestack function share do echoresults ] cr args release results release function release ] is truthtable ( --> )