5 ms·
Amazing how they just write a flat: "at least 30%" increase in productivity. Based on what exactly? How did they even measure that? I don't want to talk these s
by cleansy 7y ago
Amazing how they just write a flat: "at least 30%" increase in productivity. Based on what exactly? How did they even measure that? I don't want to talk these slides down, especially since I think that a lot of use cases might benefit from something like clojure but sources would be nice to read up.
- chungus 7y agoIf you are referring to the "30% increase in productivity from REPL driven development", it could be he means not having to recompile after each change, so not having your workflow interrupted.
- EForEndeavour 7y agoThat sounds like support for REPL-driven development, not specifically clojure use.
- 6thaccount2 7y agoAgreed to a degree. I find Python in the REPL to be great, but I think Common Lisp with Slime and maybe Clojure with Cider take it to a new level. You can write your code and when it errors out it drops you into the REPL where you can update the code incrementally while it is running. If Python gets me X% increase, Lisp and Smalltalk (and maybe Forth) get you some X% + Y%. The parent comment is right that 30% is probably a back-of-the-envelope calculation and not a rigorous one. I'm only a novice/superficial language geek, so I can't tell you why Lisp and Smalltalk can do that though. Extreme late binding? Hopefully someone more educated can reply.
- stcredzero 7y agoExtreme late binding? That's part of it. That resulted in any given code change in a method usually requiring the recompilation of just one method. Much of the Smalltalk class library was fairly stateless-ish, so you could unwind the top one or two stack frames and restart about 90% of the time.
- marble-drink 7y agoPython in a REPL isn't really possible because you can't reload modules. It's OK if you're working on just one module but as soon as that's not true it's just not possible. And if you use relative imports you can't even do that. I'd love to know if anyone has a way to get it to work because I really miss REPL based development from my common lisp and Clojure days.
- ilikehurdles 7y agoOther lisps with a repl might fall into the same ballpark, but offerings like the ruby and node.js repls are pretty inadequate by comparison. I haven’t used the python repl in a long time so I can’t comment there. In general I’d say that one of clojure’s strengths is the REPL+Editor integration that’s pretty common among all major editors supporting the language.
- EForEndeavour 7y agoREPL + Editor integration is hardly language-specific, right? Most of the devs and analysts I can think of have some kind of REPL feature enabled in their editors and languages of choice, whatever they might be.
- lastofus 7y agoPyCharm offers similar functionality of sending code from the editor to the REPL. The biggest difference between Python and Clojure is that everything is an expression in Clojure, meaning you can send much smaller chunks (assuming vars are defined) to the REPL. With Python, you tend to have to send much larger chunks, which diminishes the utility for me to the point where I just don't bother.
- FridgeSeal 7y agoPython’s REPL is pretty close to terrible in my experience. Using PyCharm’s is pretty much required.
- deleted 7y ago[deleted]