5 ms·
This year, Clojure cemented itself as my favorite programming language, and I felt glad to be able to use it daily for my work, as it does take so much effort o
by hellofunk 11y ago
This year, Clojure cemented itself as my favorite programming language, and I felt glad to be able to use it daily for my work, as it does take so much effort off the developer for little things, allowing one to concentrate more on big things.
However, it was also the year I learned that, while Clojure, as a dynamic typed language running on a VM, is the best of that class of languages, static system languages are still irreplaceable for so many other things. This was the year I realized that one language does not fit all, and that it is okay to have more than one favorite language. (And in my case, it is Clojure and C++ that I am now using equally, and with equal enjoyment, and for entirely different reasons).
- s_kilk 11y ago> This year, Clojure cemented itself as my favorite programming language... Same. I've been playing with it for years, but I feel 2015 was the year Clojure(script) finally "got there", and is definitely here to stay.
- ComNik 11y ago> This was the year I realized that one language does not fit all, and that it is okay to have more than one favorite language. Same here. This, funnily enough, had the nice effect of taking a lot of stress out of talking about programming languages.
- hellofunk 11y agoI agree. I've noticed that programmers are often evangelical about their favorite language, and it gets tiring sometimes to say "yeah, but..." Sometimes, you just need a different tool, and efforts to make one language do absolutely everything well are not usually the best way to spend one's time.
- modarts 11y agoClojure is one of the most addictive languages I've ever worked in. I can see why so many people pick it up as something to build hobby projects with, it's just so damn fun to write.
- vvanders 11y agoI'd love to dive into it more but the startup time for Lein just absolutely kills me. 10s to build, 15s for REPL. This is on a laptop that handles VS2015, Rust and many other languages fine.
- modarts 11y agoIdeally, you wouldn't be restarting the process all that often. I'll typically be REPL'd in for quite a few hours at a time as I'm developing (only reason for restarts is usually pulling in new dependencies, or if your state gets out of whack; which is something that doesn't happen all that often after adopting Stuart's "reloaded" workflow based on component)
- lsh 11y agoStuart Sierra's Component: https://github.com/stuartsierra/component https://github.com/stuartsierra/component and his 'reloaded' workflow: http://thinkrelevance.com/blog/2013/06/04/clojure-workflow-reloaded http://thinkrelevance.com/blog/2013/06/04/clojure-workflow-r... I haven't looked into them but the lein startup time kills me too. I love Clojure but I am looking at alternatives like Racket because of this.
- modarts 11y agoPeople seriously switch languages based on the time it takes their dev environment to boot up?
- lsh 11y agoI can't speak for other people, but I guess being a person and considering switching from Clojure because the development workflow has a long feedback cycle that the answer to your question is a yes? I have Ring reloading code for me as it changes, however if there is a syntax error or exception in a thread, code doesn't get reloaded and strangeness ensues, requiring me to kill the jvm instance and start it up again. Stuart Sierra talks about this problem in his reloaded workflow, and how it's still a problem for him, but he at least now has a faster way of refreshing his app instances.
- furypt 11y agoFor which use cases are you using the other favourite language (in this case, C++)?
- hellofunk 11y agoClojure is not really an option when you do systems programming, such as writing native apps, command line tools, working on small devices like a Pi, etc. There are many things I'm exploring in C++ for which Clojure is just not a good tool for the job. But also, there are some really great C++ libraries in the areas of physics and graphics, and there is no equivalent of the in Java I could use.
- sdegutis 11y agoThere are a few Clojure-inspired Lisps that are meant to be suitable for writing command line apps. I'm trying to work on one myself in fact (https://github.com/sdegutis/Paladin https://github.com/sdegutis/Paladin), with the main goal being that it's written entirely in C and has 0 (required) external dependencies -- both goals having been inspired by the implementation and design of Lua. But I'm no expert at implementing languages so it's coming along slowly.
- lord_quas 11y agoYou know, typed clojure is pretty excellent. http://typedclojure.org http://typedclojure.org
- hellofunk 11y agoMm, it has tremendous shortcomings. A lot of pro shops can't use it any more.