4 ms·
I'm currently learning Clojure. For all the "aha!" moments, there are plenty of "WTFs?", too. Not that it's a fault of the language, it's just that it requires
by arms 12y ago
I'm currently learning Clojure. For all the "aha!" moments, there are plenty of "WTFs?", too. Not that it's a fault of the language, it's just that it requires a different way of looking at things. I've only skimmed this article, but look forward to reading it in depth later. Thanks!
I'd be interested if anyone has some similar pieces to share.
- verisimilidude 12y agoMost of my Clojure WTFs were not related to the language itself, but rather the tooling. This was years ago, but everyone used to say, "Before diving into Clojure, you should really learn emacs and all these other things first." I'm glad I ignored them and sputtered along in a text editor while learning the basics of the language, because I would've otherwise burnt out. With apps like Light Table now available, maybe beginners have an easier ramp these days.
- arms 12y agoGood to know! I started with emacs, but decided to use Light Table for now. Nothing against emacs, but I don't want to make things harder by learning a new language and a new editor at the same time. Aside from Light Table (and presumably Leiningen) do you have any other tooling recommendations?
- elwell 12y agoI chose to learn both at the same time, and would recommend it if you're willing to buckle down for a month or two of frustration. I really feel like I further developed my ability to go head first into learning in a way I had in the past. Still learning a lot though about both. I should mention that I'm a freelancer; if I was an employee it might be hard to get a way with spending so much time learning rather than producing in the short-term.
- craigching 12y agoI will say that cider has done a very nice job of getting interactive development using Emacs to work well. I am a 20+ year Emacs user and love working with Clojure via cider. I will say that I think getting started with Light Table is a great way to start, but don't leave Emacs too far behind! Good luck go you!
- mendort 12y agoI also am a long time emacs user, but whenever a plugin freezes emacs I immediately stop using it. Is is cider now stable? I know nrepl.el would crash emacs frequently if you asked it to evaluate the wrong thing.
- willismichael 12y agoI'm not sure how long this feature has been around, but C-c C-b will abort any running evaluation(s)... I've used it more than once to save a non-responsive cider repl session.
- kjjw 12y agoWell I've been using cider / nrepl.el for a long time and never knew this. Don't know how I missed it. Thank you.
- craigching 12y agoI've never had cider or the old nrepl.el crash or freeze on me, they've always worked fine. I develop on Mac OSX and Linux, what platform are you on? And what Emacs version? I tend to be on the latest GNU releases. Are you using a GNU Emacs or something else? If you're on Mac, I highly recommend this distribution [1] [1] -- http://emacsformacosx.com http://emacsformacosx.com
- mendort 12y agoI'm on the latest release of GNU emacs. I'm mostly on Windows, which could be the issue.
- tensor 12y agoI really like IntelliJ with cursive: https://cursiveclojure.com/userguide/ https://cursiveclojure.com/userguide/
- programnature 12y agoDefinitely recommend people try Cursive Clojure, the clojure Intellij plugin. Much easier to use/setup than emacs IMHO. Lots of clojure people have been switching.
- deno2 12y agoNicer debugging experience too.
- yogthos 12y agoI never got into Emacs myself, I started with Eclipse and then moved to Cursive (https://cursiveclojure.com/ https://cursiveclojure.com/) which I simply can't recommend enough, I also use Light Table for some of my smaller projects. The fact that you don't have to use Emacs to work with Clojure is a huge benefit in my opinion. Emacs takes a lot of investment to learn and use effectively, and not everybody has the time, nor the inclination to do that.
- arms 12y agoSo I'm about half way through it now. I'm really impressed with how much information it's conveying in a succinct form. I'm going through Clojure for the Brave and True, and think this supplements it nicely. There are a few typos, but the most glaring one was the incomplete python code underneath the "Code Structure" heading: l = [1, 2, 3, 4, 5] for i in l i = i*i for i in l if (i mod 2 == 0) print l I assume the author wanted to show how the list was mutated. And those conditionals need trailing colons :)
- yogthos 12y agothanks, I just fixed that, I'm not a python guy as you can tell :)
- raspasov 12y agoMy personal favorite editor is IntelliJ IDEA Community Edition + cursiveclojure.com plugin (not affiliated with the cursiveclojure.com people but highly recommend it). I don't come from an Emacs background but from what I've seen and heard from Emacs people is that it combines all the best parts of Emacs when it comes to Lisp code manipulation.
- lemming 12y agoI'm the developer of Cursive - thanks to you and others in this thread, I'm really glad you're all liking it!