Fork me on GitHub
#clojure-dev
<
2019-04-28
>
gfredericks22:04:23

user> {#?@(:clj [:foo 12])}
{:foo 12}
user> (read-string {:read-cond :preserve} "{#?@(:clj [:foo 12])}")
Execution error at user/eval33425 (REPL:586).
Map literal must contain an even number of forms
does this suggest that using splicing reader conditionals inside a map is an antipattern?

hiredman02:04:02

similar to https://dev.clojure.org/jira/browse/CLJ-1425 which hasn't been weighed in on by anyone with decision making power

gfredericks20:04:59

I feel like this is more severe though; you're presently able to write code that tools effectively can't read

hiredman20:04:21

somewhere in confluence there is/was a design page for conditional expressions where I argued against implementing them in the reader like they are

seancorfield23:04:58

FYI, per Alex's latest Inside Clojure note, I updated */CONTRIBUTING.md and */.github/PULL_REQUEST_TEMPLATE where I had permissions to point all the old Confluence links to http://clojure.org links. Just in case you get alerts about your Contrib repo being updated and wonder what's up. I left a few alone that use a "non-standard" version of either of those files (i.e., that didn't match most repos).