4 ms·
I'm a recent clojure convert too (haven't used clojurescript much).. I have to say, the only thing that annoys me about it occasionally is its marriage to the J
by Nihilartikel 10y ago
I'm a recent clojure convert too (haven't used clojurescript much).. I have to say, the only thing that annoys me about it occasionally is its marriage to the JVM. It took a few months to get into it from a C++/Python/Go background, but now, hacking in other languages (maybe less so in Python) feels like sculpting while wearing oven mitts - needlessly tedious and overwrought.
But, to make a unit test by coding the function, making a lovely structured literal of the input data, running the function in the repl, and then pretty printing the hand-verified output to paste in as the expected test result is just the least effort I can imagine for that kind of coding process. I'd count myself as happier if every language had as strong a system for printing and reading in data literals.
- aeosynth 10y ago> I have to say, the only thing that annoys me about it occasionally is its marriage to the JVM. Clojurescript can be hosted entirely in js; here's a repl: https://github.com/anmonteiro/lumo/ https://github.com/anmonteiro/lumo/
- yogthos 10y agoI'm also working on Node.js port for Ring https://github.com/macchiato-framework https://github.com/macchiato-framework that's fairly usable at this point.
- jiyinyiyong 10y agoWhy not Lumo?
- yogthos 10y agoI'm not sure I understand what you mean.
- delegate 10y agoOh yes, the JVM is a pain.. 30 seconds just to start the app is a tough sell for a naturally-speed-obsessed C++ coder like myself. I've used 'the JVM argument' to justify putting the language aside for a year or so, but now I'm back and it doesn't seem to bother me as much.
- patricius 10y agoIt seems that the JVM cannot be blamed for the slow startup time when using Clojure, but compiling Clojure's own core library is what makes it slow. And if you begin to add dependencies it will become even slower. The itself JVM is able to start quite quickly.
- dualogy 10y ago> but compiling Clojure's own core library is what makes it slow Why would it do that every time one compiles one's project? Surely Clojure must keep a cached linkable byte-code/binary somewhere per version/OS/arch, as all modern languages seem to do?
- jgalt212 10y agomore on current official efforts and metrics here: http://dev.clojure.org/display/design/Improving+Clojure+Start+Time http://dev.clojure.org/display/design/Improving+Clojure+Star...
- ww520 10y agoDoesn't the C++ compiler take a while to finish compiling to let you run the program?
- throwaway7645 10y agoBut you compile once, not everytime you run.
- DigitalJack 10y agoStartup times are unpleasant, but my main reservation about the JVM is oracle. I invested a lot of time in learning clojure, but Oracle concerns me enough that I'd rather not build my knowledge stack on them. So I've stopped using clojure. I may look into clojure script again in the future, but it still feels like a kludgey experience to me. Inspite of the amazing efforts by David Nolan and the community.