Live data from Hacker News

Why we built Vade Studio in Clojure

bytes.vadelabs.com

31–40 of 151 posts

Re: Why we built Vade Studio in Clojure

#31
post #26
post #18

Interesting story. I am not entirely convinced that all credit should go to the programming language here, though. My theory is that communicating abstractions is hard. If you work on your own, or in a (very) small team, you can come up with powerful abstractions that allow you to build amazing systems, quickly. However, sharing the underlying ideas and philosophy with new team members can be daunting. As systems gro…

> It may also clarify why more powerful languages such as Scala, Common Lisp, Smalltalk, Haskell, etc, consistently fail to pick up steam. Languages need a window of opportunity, and many of those squandered it. Clojure won over Scala because at the time when people were loooking for an alternative JVM langauge, Clojure was more of a departure from Java and seemed to have better tooling (compile times and syntax supp…

...in what sense has Clojure actually won over Scala?

I see way more Scala in companies last ~5y and have the impression of its ecosystem being more robust. Not uncommon for greenfields. It's longer than that I even encountered an active Clojure codebase. This is from a data-engineer perspective.

Clojure may be more popular for some niche of app startups perhaps? We are in different "bubbles" I suppose.

EDIT: Data disagrees with you also.

https://www.tiobe.com/tiobe-index/

https://redmonk.com/sogrady/2024/09/12/language-rankings-6-2...

https://survey.stackoverflow.co/2024/technology#1-programmin...

Re: Why we built Vade Studio in Clojure

#32

Look these folks can do whatever the heck they want, use whatever language they want. However my criteria for selecting a language for use in a professional context : 0: fit to task - obviously the language has to be able to do the job - to take this seriously you must define the job and what its requirements are and map those against the candidate languages 1: hiring and recruiting - there must be a mainstream sized…

The signal to noise ratio is way better if you take some eccentric language.

The amount of knuckleheads that Ive had to interview just to get a single coherent developer is mind boggling (remote first).

Re: Why we built Vade Studio in Clojure

#33

Look these folks can do whatever the heck they want, use whatever language they want. However my criteria for selecting a language for use in a professional context : 0: fit to task - obviously the language has to be able to do the job - to take this seriously you must define the job and what its requirements are and map those against the candidate languages 1: hiring and recruiting - there must be a mainstream sized…

The signal to noise ratio is way better if you take some eccentric language. The amount of knuckleheads that Ive had to interview just to get a single coherent developer is mind boggling (remote first).

[deleted]

Re: Why we built Vade Studio in Clojure

#34
post #28
post #26

Earlier quoted context omitted.

> It may also clarify why more powerful languages such as Scala, Common Lisp, Smalltalk, Haskell, etc, consistently fail to pick up steam. Languages need a window of opportunity, and many of those squandered it. Clojure won over Scala because at the time when people were loooking for an alternative JVM langauge, Clojure was more of a departure from Java and seemed to have better tooling (compile times and syntax supp…

> Lots of us hated doing assembly language programming but had no real alternative. I kind of fail to see Lisp as an alternative to assembler on mid 80s micros. Though, there were several cheap Lisps for PCs...

The bank switched memory architectures were basically unused in mid 80s micros (C128, CoCo3, etc.).

Lots of utility software like spell checkers and the like still existed. These would be trivial to implement in Lisp but are really annoying in assembler.

Lisp would have been really good relative to BASIC interpreters at the time--especially since you could have tokenized the atoms. It also would have freed people from line numbers. Linked lists work well on these kinds of machines. 64K is solid for a Lisp if you own the whole machine. You can run over a bank of 16K of memory for GC in about 50 milliseconds or so on those architectures.

Had one of the Lisperati evangelized Lisp on micros, the world would look very different. Alas, they were off charging a gazillion bucks to government contracts.

However, to be fair, only Hejlsberg had the correct insights from putting Pascal on the Nascom.

Re: Why we built Vade Studio in Clojure

#35
post #34
post #28

Earlier quoted context omitted.

> Lots of us hated doing assembly language programming but had no real alternative. I kind of fail to see Lisp as an alternative to assembler on mid 80s micros. Though, there were several cheap Lisps for PCs...

The bank switched memory architectures were basically unused in mid 80s micros (C128, CoCo3, etc.). Lots of utility software like spell checkers and the like still existed. These would be trivial to implement in Lisp but are really annoying in assembler. Lisp would have been really good relative to BASIC interpreters at the time--especially since you could have tokenized the atoms. It also would have freed people fro…

> Lisp would have been really good relative to BASIC interpreters at the time

I see no evidence for that. Lisp was a pain on tiny machines with bad user interface.

> 64K is solid for a Lisp if you own the whole machine.

I had a Lisp on an Apple II. It was a useless toy. I was using UCSD Pascal and Modula 2 on it. Much better.

I had Cambridge Lisp on an Atari with 68k CPU. It was next to unusable due to frequent crashes on calling FFI functions.

The first good Lisp implementation I got was MacScheme on the Mac and then the breakthrough was Macintosh Common Lisp from Coral Software.

> Had one of the Lisperati evangelized Lisp on micros

There were articles for example in the Byte magazine. Lisp simply was a bad fit to tiny machines. Lisp wasn't very efficient for small memory. Maybe with lots of work implementing a tiny Lisp in assembler. But who would have paid for it? People need to eat. The tiny Lisp for the Apple II was not usable, due to the lack of useful programming environment.

> Alas, they were off charging a gazillion bucks to government contracts.

At least there were people willing to pay for it.

Re: Why we built Vade Studio in Clojure

#36

I'm curious if Elixir could provide a similar development environment? Seems like many similar capabilities, like a focus on immutable data structures, pure functions, being able to patch and update running systems without a restart, etc.

For the most part, yes.

CIDER and nREPL is better tech than IEX though. I live in both and Clojure is much more enjoyable.

Re: Why we built Vade Studio in Clojure

#39
post #31
post #26

Earlier quoted context omitted.

> It may also clarify why more powerful languages such as Scala, Common Lisp, Smalltalk, Haskell, etc, consistently fail to pick up steam. Languages need a window of opportunity, and many of those squandered it. Clojure won over Scala because at the time when people were loooking for an alternative JVM langauge, Clojure was more of a departure from Java and seemed to have better tooling (compile times and syntax supp…

...in what sense has Clojure actually won over Scala? I see way more Scala in companies last ~5y and have the impression of its ecosystem being more robust. Not uncommon for greenfields. It's longer than that I even encountered an active Clojure codebase. This is from a data-engineer perspective. Clojure may be more popular for some niche of app startups perhaps? We are in different "bubbles" I suppose. EDIT: Data di…

I can't really speak to modern stuff, and it is certainly possible my memory is faulty. Scala was a PITA in the early 2000s and you were generally better served with something else if you could move off the JVM. Clojure came in about mid 2000s and seemed to be what a bunch of people stuck on the JVM but doing data processing were desperate to find.

My feeling was that a lot of Clojure folks moved on as the data processing stuff moved on from Java/JVM.

My impression has been that JVM-based languages have effectively been on a steady general decline for a while now. Java has fixed a lot of its issues; Kotlin gave the Java expats somewhere to go. And Javascript/Node along with Go drained out the general masses who didn't really want to be on the JVM anyhow.

However, it is interesting that Clojure has effectively disappeared in those rankings.

Re: Why we built Vade Studio in Clojure

#40

Clojure is a lot of fun to tinker with, but man… I love my static types. I think I’d hate to work on a large codebase in Clojure and constantly be wondering what exactly “m” is.

You wouldn't because of the repl. You would jack in and no exactly what m is.
Post reply on HN