Skip to content

Instantly share code, notes, and snippets.

@cgrand
Last active March 6, 2021 17:16
Show Gist options
  • Star 10 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save cgrand/cfd0f679fdd4c89c92fa1e02cbfbee96 to your computer and use it in GitHub Desktop.
Save cgrand/cfd0f679fdd4c89c92fa1e02cbfbee96 to your computer and use it in GitHub Desktop.
An ugly hacky heredoc for Clojure
(defn heredoc []
(let [delim (.readLine *in*)]
(->> (repeatedly #(.readLine *in*))
(take-while #(not= delim %))
(interpose \newline)
(apply str))))
; The following lines are read (by the reader) as:
; "Look )(\"\\T\na here doc!\n"
#=(heredoc)"""
Look )("\T
a here doc!
"""
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment