3 ms·
A Brief Beginner's Guide To Clojure
- codehalo 15y agoIn "5. The Language", not one mention of the language's real roots - Lisp. Very unfortunate, IMHO.
- uvtc 15y agoHi. Thanks for the feedback. Please note that the document is a work-in-progress. I didn't think to mention its roots on that page, given that it's one of the first things mentioned on the main clojure.org page. Added a note about it being a Lisp dialect.
- codehalo 15y agoThanks. Its always good for anyone who has even a passing interest in a programming language to know the motivation for it given the amount of programming languages out there.
- ludwigvan 15y agoThanks for this, very useful. Btw, git config --global core.editor nano This made me smile :)
- Ralith 15y agoWhy more people don't stick 'emacsclient -t -a ""' in there, I'll never understand.
- ineedtosleep 15y agoWhat does the author mean here? > "If you're using [...] another OS (tsk tsk tsk) [...]" I develop on Mint and Gentoo, so any joking here is probably passing over me. Other than a jab at MS (and maybe Apple), does this mean that programming in Clojure would/could be difficult outside of Linux?
- uvtc 15y agoI was joking, and meant "any other OS besides GNU/Linux". Perhaps not perfectly clear though. Removed unnecessary text. You should've seen it before though! Had to scale it back from "or another OS ({folds arms} {slowly shakes head} [long sigh] tsk tsk tsk)". ;)
- joshAg 15y agowhat do you have against freebsd??!
- weavejester 15y agoThe Emacs setup steps are somewhat behind the times. These days it's easier to use packages to install new modes and themes, and Technomancy's Emacs Starter Kit should be mentioned for those who are new to Emacs and want sensible defaults. It's even easier with Emacs 24, as the starter kit can be installed via a package as well. Current best practise is to put all the packages you need in your init.el file, then when you start Emacs, it'll download and install any packages you're missing. You have a section "Other Libraries" and a section "Finding the Libraries You Want", which cover essentially the same ground, but are strangely split up. So the former mentions the Clojure wiki page, and the latter mentions clojure-toolbox and other third-party library lists. Maybe they should all be in one section? Other things... "lein deps" isn't really necessary anymore, as Leiningen checks for dependencies before running each command. I think you also need to mention that you can effectively forgo the group-id and have [foo "1.0"] (which is the same as [foo/foo "1.0"]). Pushing to Clojars is easier with the "lein-clojars" plugin. Then it's just a "lein push" away.
- technomancy 15y agoI've been trying to keep people from learning Emacs and Clojure at the same time since in most cases it just leads to frustration. When you're learning a new language, your editor is never a bottleneck, so it makes a lot more sense to wait till you're comfortable in the language with your current environment before changing editors. Anyway, it's kind of orthogonal to learning Clojure, so it seems a bit out of place here. Perhaps a second article would make more sense, though contributing to the official documentation would of course be much better.
- uvtc 15y agoHi weavejester. Thanks for the feedback! Regarding Emacs, yes, I guess I'm a bit behind the cutting edge. I'll probably revisit the section of the Guide once I make the upgrade to Emacs 24. Meantime though, I don't think the instructions are too onerous, and --- as I mention at the top --- if you've already got a favorite editor, you safely skip the whole section. Re. the "Other Libraries" vs. "Finding the Libraries you Want", thanks for pointing that out. I removed some duplicated info and feels better now. Re. `lein deps`, it could've been clearer, so I made it so. Thanks. Re. group-id, thanks for pointing that out. I'll get that clarified soon. Re. lein-clojars, I like the instructions as is, because I think it will give new users a more concrete feel of what's going on when they upload packages to Clojars.
- kreek 15y agoNice to see chapter 4 on setting up a dev environment early on, many clojure tutorials (and even a book I have) leave this out, or until the end. Working within a project is how you'll write real-world code so you might as well start with it.