@lucasbradstreet: have you considered using cljx for the instaparse source code as well, so it's easier to merge upstream changes?
Yes, that one is a bit of a trade off. There will definitely be more merge issues and it does kinda uglify the code a lot. It mostly depends on whether Mark would prefer separate cljs and clj, or cljx in an eventual upstream merge
I was thinking it might actually make it easier to merge upstream changes, because currently if a feature is changed in the clj version, it is quietly merged into the clj source without changing the cljs side at all.