4 ms·
If we look at it from a historical perspective, Clojure came about at the end of the Java and Ruby eras where running big long-lasting programs was the norm. It
by Touche 7y ago
If we look at it from a historical perspective, Clojure came about at the end of the Java and Ruby eras where running big long-lasting programs was the norm. It was about 2 years later that Node.js, Go, and then Rust came about. These languages specialized in faster startup times, which made them more amenable to a variety of use-cases (where Java and Ruby were mostly used as web servers).
If we just look at developments of the last 5 years, and in particular serverless, it's been about taking advantage of those short startup times to use in a server context. When you take that into account, these languages become even more in the lead.
I think the next lisp that has a chance to really take of will be one built on wasm.
- zimablue 7y agoCouldn't you just compile cljs=>js=>wasm? cljs is mostly the same language right
- yogthos 7y agoYou absolutely can, and you can compile JVM Clojure to native binaries via GraalVM. For example, somebody wrapped up my Migratus library into a standalone migration tool recently https://github.com/leafclick/pgmig https://github.com/leafclick/pgmig
- tellak 7y agoDon’t really agree with the history. MRI ruby had always had a fast startup time and was not originally created for the web... it’s more like a “better” Perl cum toolkit for C/unixy stuff- ironically what python became more popular for despite python not originally being written for that purpose. Also in the old days of the web.. CGI was literally spawning a process per request. Regardless it’s bizarre to think nodejs pioneered startup time... Ruby, lua, python, and good lord Perl would really like to have a word with you for starters. Java was really more the exception. And I’m not sure it’s true that these serverless platforms are spawning a new process per request ... but wow what is old is new again. Sounds like you’re describing inetd (look it up). Nothing of what you’re talking about is 5 years. Try 30-40.
- Touche 7y agoYou're misreading my comment. I'm talking about general trends in programming. The 2000s were dominated by bulky server environments like Java, IIS (for .NET) and Ruby Mongrel. These were not things you started up just by running a script. The 2010s the trends changed towards languages that specialized in faster startup times. That led to serverless. No one said that these are new inventions. Like all trends its cyclical. I'm just pointing out the trends in order to better understand where Clojure fits in.
- tellak 7y agoNo not misreading. Ruby mongrel was the antithesis of a bulky server environment, it was a single threaded worker host generally spawned behind something like Apache or nginx or lighttpd. The need to keep mongrel workers around was more a function of the slow startup of rails then ruby or mongrel itself. Like I said the Java (and .NET) were the exception. As far as trends... java and .net dominate enterprise and they still do. The trend is very slow in the grand scheme. Frankly your comment seems to be conflating language issues with framework issues with “serverless” and even scripting. I don’t think there is a cogent argument to be had about overall trends with all that. Yes lambda and serverless are a thing but half the whole world still runs on JavaEE or ASP behemoths