Hacker News new | past | comments | ask | show | jobs | submit login

On the video it sounded like it was 16,000 lines of code. Was that the amount or did I mishear it? That was claimed as one of the largest Clojure codebases, which seems unlikely.

You are right. It's not the largest Clojure codebase(Language Breakdown of Storm [1]). There may be reasons why they think their Clojure codebase is largest.

[1] https://www.openhub.net/p/apache-storm/analyses/latest/langu...

That's correct. As for size relative to other projects, we came to that conclusion by combing large GitHub clojure projects and comparing non-blank lines. For instance, LightTable comes in at around 12,000 lines. Clojure is a darn terse language.

Of course, there may be private repositories which are larger (thus the weasel words "one of"). Corrections welcome. :-)

From memory, CircleCI have around 100k LOC. Nonetheless, it's very cool getting Clojure on a plane.

Thanks. Found a reference to the CircleCI code base:


I wonder how their move away from clojure.typed has impacted code size.

I was made aware of a private Clojure project that is comprised of over 30k lines. So we aren't the largest, but probably the first to be on a commercial aircraft.

But as Tim pointed out auditing of open source projects had most far smaller than 16k. Lamina a very feature rich library I think was on the order of 6k.

Perhaps I should have gone with "Clojure on planes" as my title.

Or "States On A Plane" with a photo of Samuel L. Jackson. :-)

I re-ran SLOC using the sloccount-clojure tool, we sit at about 34k lines using that tool. Instead of my jenky find/egrep/wc.

I'd consider 16,000 on the small side. For comparison, I've been working on a Clojure roguelike as a hobby project and it's in the ~18,000 LOC range.

Aaron, how are you counting the SLOC? I am not doing a simple `wc -l` on all clj files in our project. I am looking for lines that include either closing parenthesis or closing brackets. It isn't exact. A better count would be to count the # of forms.

I get 17k in your project with find . -name ".clj" | xargs wc -l but 8k if I run 'find . -name ".clj" | xargs egrep "[)\]]" 2> /dev/null | wc -l'.

If I just run `wc -l` on our project I get 35k lines.

8k SLOC is still a pretty impressive size project considering the audit of several open source projects that I did were mostly below 8k SLOC.

I develop Cursive - it's closed source, but it's around 31k LOC Clojure, 23k Java and 5k Kotlin, all as counted by cloc. I'm not sure what's up with your find command, but that reports 5k LOC in Cursive, it's definitely more than that. Straight wc -l reports 74k.

I'm pretty sure my code has more bugs than yours, though :-)

Anyway, very interesting presentation, thanks - it's great to see a project like this in a space I wouldn't have expected it. I'm very surprised (and pleased) to know that Clojure is on Boeing's approved language list - I'd love to know how that came about.

BTW this is the largest Clojure project I've heard about: https://twitter.com/hlship/status/631935954039652352. That's a pure Clojure project.

I used sloccount-clojure to count lines, but before running it I made one change so that it would include .cljc files.

Then I summed both robinson and zaffre (0.4.0 branch) seeing as they both used to be part of the same project and have only recently been separated.

That's what I heard in person

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact