HN user

ballpark

191 karma
Posts9
Comments73
View on HN

I like that the author points out that trying to write a new interpreter is not a good idea. However, to call that DDD, and then to say DDD is a lie is where I would disagree. I guess one could say that it's DDD taken to some extreme, but I would just call it a poor choice as the author points out.

Also I assume that the author is equating DDD with Data-Oriented Programming. Here's a good book on the topic: https://www.manning.com/books/data-oriented-programming?ar=t...

One thing I don't love about the book though is that it tries to demonstrate how to do DOP with Object-Oriented languages, which looks to be difficult to accomplish

It's definitely not over. I got into it professionally in 2018, and have remained employed with it at three different companies. There's turmoil around it because startups use it with great success, but then as they want to scale they have a hard time finding enough devs to throw at their new ideas.

REBL 3 years ago

I see what you mean. Well answered. I think there needs to be a fix for this... like make Clojure first class for bits/bytes levels of programming. :)

REBL 3 years ago

[Clojure] is really optimized for [\snip] data centric stuff

Not sure what this means. Stu Halloway made a comment to the effect of "all programming is ultimately data transformations". Honest question here, what programming language is NOT for data-centric stuff?

I find that when I'm working in verbose programming languages: Java, C#, it doesn't feel like all programming is data transformations, when in reality it is.

It's really not a language for big team.

Not my experience, but you do need senior devs who are good at Clojure to be reviewing and helping the juniors

if I had a tough day, my clj code will look like rubbish

This may not be a reflection of the language

Interesting point. I've recently taken on a client who insists on using C# with their cloud solution. It's killing me. Though you're calling Clojure "advanced", what I'm missing is its simplicity.

I used the Cider debugger with Clojure with some success, but as I got better at REPL-driven development I ultimately stopped firing up the debugger

What kind of differences/limitations are there when interpreting Clojurescript (nbb) as opposed to compiling it (shadow-cljs, lein, self-hosted?, other things?)?

I also choose to work for companies that use Clojure/Clojurescript. I'm not debating about languages that are better or not, but I get annoyed working in most others.

Yes, Clojure

Is it possible to build web apps in common lisp or any lisp? Any frameworks available?

Clojure would be good because it has lots of users. Many web apps in production. It might be good to start out with luminus for Clojure, but maybe even before that, try to get a simple Ring and Compojure thing going where you can send a request and get feedback.

Is it possible to build multithreaded apps that use multiple CPU cores for performance? What is used? POSIX threads?

Clojure is awesome for multi-threading. That's one reason Clojure is functional/immutable by default.

Also, you get access to many libraries in the language hosts (Java, Javascript). That could be a big reason for its success.

Good luck in your pursuit!

I think I would find it great fun to take a Clojure codebase like this one that you inherited and refactor it to something workable and maintainable! I agree it's probably not a job for a Clojure newbie.

I've watched a number of Clojure centric talks from Nubank employees. Actually, I think it was one particular employee, but I don't remember his name. One was on how they do testing. The others were about Fulcro, which is a very interesting web frontend library/framework.

I find myself going to the youtube videos a lot. There's a lot of new concepts in Fulcro. I'm surprised how long it's taking me to figure it out, but I haven't given up yet, and so far I'm liking it. I'm hoping that the investment proves worthwhile.

Fancy Clojure REPL 6 years ago

Based on Eric Normand's REPL Driven Development series, if I'm not mistaken, he considers evaling from the editor part of the REPL driven development flow, so it seems that evaling from the editor could also be considered "using the repl"

edit...

I think I'm seeing that your question is more of a point that you're making. Yes, it's nice to be able eval from the editor, but now being a professional Clojure developer after having been a Python developer for years, I would agree with the arguments that typing lisp (s-expression) code in a repl is much easier than Python, because you don't have to worry about indentation. This probably applies to other languages for different reasons. eg. Java... I can't even imagine what a REPL would be there. My repl usage in python was usually just calling a function I wrote in the editor. Same with my little experience in Ruby.