Improve the conversion of Sequential
Opened this issue · 0 comments
When converting sequential expressions, the output Clojure is ugly.
For example, with this F# code: let f x = x*x in printf "a"; printf "b"; printf "c"
The three printf
expressions are sequential. Clojure also has a construct which will allow the execution of a sequence of unrelated expressions: the do
construct, so the equivalent to the preceding F# code would be (do (print "a") (print "b") (print "c"))
.
Flojure will correctly convert let f x = x*x in printf "a"; printf "b"; printf "c"
into correct Clojure. However, the output is (do (print "a") (do (print "b") (print "c")))
, which while correct, is ugly and it is something no one would write.
I want to make the output be (do (print "a") (print "b") (print "c"))