3 ms·
Hey, I also enjoyed the article... and would definitely be interested in reading more about macros. But unrelated to that, I wanted to comment on this observat
by brabel 6y ago
Hey, I also enjoyed the article... and would definitely be interested in reading more about macros.
But unrelated to that, I wanted to comment on this observation:
> In my current project, it takes almost 30 seconds to boot up a development REPL. Half a minute!
I work mostly with JVM languages and the JVM startup nowadays is actually very fast for a VM, under 100ms for your code in main to be running from a cold start. 30 seconds to boot is completely unheard of in my experience. If whatever you're using is open source, I wouldn't mind having a look to figure out what the problem may be.
- phyrex 6y agoThat’s Clojure, not the JVM. In certain configurations it can unfortunately take that long. It’s getting better though.
- dustingetz 6y agoThat's Clojure, it compiles .clj files on demand into jvm .class when you require them. Here probably his user.clj is loading the whole application. You can do some dynamic things to delay the loading/compiling until after your REPL starts, so that you get a repl in 1-2 seconds. https://gist.github.com/dustingetz/a16847701c5ad4a23b304881e2a209a0 https://gist.github.com/dustingetz/a16847701c5ad4a23b304881e... In production you would ahead-of-time compile.
- john-shaffer 6y agoIt's also pretty common to leave a REPL running for days or months in development.
- dkersten 6y agoYeah, I typically don't close my REPL unless I reboot. Which happens maybe once or twice a month max.
- TacticalCoder 6y agoNice trick! I also shaved 35% of my "time to CIDER REPL" by passing a few parameters to the JVM (-client, -Xverify:none, plus two tieredcompilation-related settings I copy/pasted).