f ' '="SPACE";f '"'="QUOTATION MARK";f '\''="APOSTROPHE";f '('="LEFT PARENTHESIS";f ')'="RIGHTf" PARENTHESIS";f"="SPACE";f"\""="QUOTATION 'MARK";f".'="FULL STOP";f ';'="SEMICOLON";f"="FULL '<'="LESSSTOP";f";"="SEMICOLON";f"<"="LESS-THAN SIGN";f '='="EQUALS SIGN";fSIGN";f"="="EQUALS '>'="GREATERSIGN";f">"="GREATER-THAN SIGN";f '\\'="REVERSESIGN";f"\\"="REVERSE SOLIDUS";fSOLIDUS";f"-"="HYPHEN-MINUS";f x|x>'Z'="LATINx|x>"Z"="LATIN SMALL LETTER "<>pure x;f"<>x;f x="LATIN CAPITAL LETTER "<>pure x;main=(mapM(putStrLn"<>x;u=putStrLn.f).(id<>show))"f ' '=\"SPACE\";f '\"'=\"QUOTATION MARK\";f '\\''=\"APOSTROPHE\";f '('=\"LEFT PARENTHESIS\";f ')'=\"RIGHT PARENTHESIS\";fpure;s=id<>show;n=mapM 'u.'=\"FULLs;main=n"f\" STOP\";f\"=\"SPACE\";f\"\\\"\"=\"QUOTATION ';'=\"SEMICOLON\";fMARK\";f\".\"=\"FULL '<'=\"LESSSTOP\";f\";\"=\"SEMICOLON\";f\"<\"=\"LESS-THAN SIGN\";f '='=\"EQUALS SIGN\";fSIGN\";f\"=\"=\"EQUALS '>'=\"GREATERSIGN\";f\">\"=\"GREATER-THAN SIGN\";f '\\\\'=\"REVERSESIGN\";f\"\\\\\"=\"REVERSE SOLIDUS\";fSOLIDUS\";f\"-\"=\"HYPHEN-MINUS\";f x|x>'Z'=\"LATINx|x>\"Z\"=\"LATIN SMALL LETTER \"<>pure x;f\"<>x;f x=\"LATIN CAPITAL LETTER \"<>pure x;main=(mapM(putStrLn\"<>x;u=putStrLn.f).(id<>show))"pure;s=id<>show;n=mapM u.s;main=n"
Try it online!Try it online!