That's one downside, ideally (in my world) spec would be a compile/test time dependency - esp. since AFAIK it's not recommended to turn it on at run-time for day-to-day operation.
We use clojure.spec extensively in production code so that certainly isn’t true. You might not turn on instrumentation for production but spec is far more than instrumentation and far more than generative testing. In addition, clojure.core.specs.alpha leverages clojure.spec.alpha to provide “compile-time” specs for macros, which you can argue is not “production” if you argue for AOT only – which I’d strongly push back on. since clojure.jar depends on an alpha, when that comes out of alpha, we'll need patch releases of Clojure core. Not true. You can specify the version of clojure.spec(.alpha) independently of the version of Clojure itself. The same is true for clojure.core.specs.alpha. That’s part of why spec was split out from Clojure itself: so that it could evolve on a separate timeline. It’s how Clojure 1.9.0 went to release without spec coming out of alpha and how Clojure 1.10.0 has continued to evolve without lock-step against clojure.spec versions. Sean Corfield -- (970) FOR-SEAN -- (904) 302-SEAN An Architect's View -- http://corfield.org/ "If you're not annoying somebody, you're not really alive." -- Margaret Atwood From: Mark Derricutt<mailto:m...@talios.com> Sent: Monday, July 30, 2018 6:48 PM To: Clojure<mailto:clojure@googlegroups.com> Subject: Re: What Happened to "java -jar clojure.jar hosehead.clj" ? On 31 Jul 2018, at 9:08, Payter Versteegen wrote: I'd've hoped that clojure wouldn't have become as tightly-coupled with spec (for instance), but maybe I just need to read the Rationale page more deeply. Dependency hell blows, especially if your work environment is disconnected from the global internet. Welcome to source based dependencies/languages. That's one downside, ideally (in my world) spec would be a compile/test time dependency - esp. since AFAIK it's not recommended to turn it on at run-time for day-to-day operation. I wonder if it'd be possible to have no-op versions of spec APIs in clojure.jar that are replaced with implementations if you include the actual... implementation. I hit this recently with clojure.osgi and the move to the latest clojure, I had to include spec - which, as Sean mentions - is just part of the build process ( Maven in this case ), but I did feel dirty about it - since clojure.jar depends on an alpha, when that comes out of alpha, we'll need patch releases of Clojure core. Mark Lover/Loather of static types, and build/deps systems :) "The ease with which a change can be implemented has no relevance at all to whether it is the right change for the (Java) Platform for all time." — Mark Reinhold. Mark Derricutt http://www.theoryinpractice.net http://www.chaliceofblood.net http://plus.google.com/+MarkDerricutt http://twitter.com/talios http://facebook.com/mderricutt -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com<mailto:clojure+unsubscr...@googlegroups.com>. For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.