{A1}=STATEMENT("Spreadsheet Lisp", "is", "fun to learn") -> "'{1} {2} {3}.'('Spreadsheet Lisp', 'is', 'fun to learn')." =QUESTION(A:A, "Is", "Spreadsheet Lisp", "fun to learn") -> TRUE =QUESTION(A:A, "Is", "Spreadsheet Lisp", "boring") -> FALSE
DEFINE( QUESTION, LAMBDA( knowledgebase, fragment1, [fragment2], [fragment3], [fragment4], [fragment5], [fragment6], [fragment7], [fragment8], [fragment9], [fragment10], LET( arity, ARITY( fragment1, fragment2, fragment3, fragment4, fragment5, fragment6, fragment7, fragment8, fragment9, fragment10), template, CHOOSE( arity, "('{1}').", "('{1}', '{2}').", "('{1}', '{2}', '{3}').", "('{1}', '{2}', '{3}', '{4}').", "('{1}', '{2}', '{3}', '{4}', '{5}').", "('{1}', '{2}', '{3}', '{4}', '{5}', '{6}').", "('{1}', '{2}', '{3}', '{4}', '{5}', '{6}', '{7}').", "('{1}', '{2}', '{3}', '{4}', '{5}', '{6}', '{7}', '{8}').", "('{1}', '{2}', '{3}', '{4}', '{5}', '{6}', '{7}', '{8}', '{9}').", "('{1}', '{2}', '{3}', '{4}', '{5}', '{6}', '{7}', '{8}', '{9}', '{10}')."), subject, fragment2, question_word, LOWER(fragment1), CONTAINS( knowledgebase, FORMAT( template, subject, question_word, fragment3, fragment4, fragment5, fragment6, fragment7, fragment8, fragment9, fragment10)))))
Help us optimize this function