• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Paul Clapham
  • Tim Cooke
  • Devaka Cooray
Sheriffs:
  • Liutauras Vilda
  • paul wheaton
  • Rob Spoor
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • Piet Souris
  • Mikalai Zaikin
Bartenders:
  • Carey Brown
  • Roland Mueller

Clojure Made Simple: What's Clojure good at?

 
Ranch Hand
Posts: 434
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I have 2 questions.

1. What's Clojure good at comparing with other languages?
2. How about the Clojure language in industry? Are there any companies use Clojure in their projects?
 
Rancher
Posts: 379
22
Mac OS X Monad Clojure Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
To address your second question, here's a small list of companies using Clojure: http://dev.clojure.org/display/community/Clojure+Success+Stories

There have also been a number of presentations over the last couple of years that are case studies from companies that have adopted Clojure. And of course it's worth noting that Twitter, LinkedIn and many other "brand names" use Clojure for some projects, even tho' they might not be talking about it much in public (Twitter bought Backtype who created Cascalog and, since becoming part of Twitter, have created Storm - both of which are impressive Clojure projects for manipulating "big data").
 
Author
Posts: 367
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

qunfeng wang wrote:I have 2 questions.

1. What's Clojure good at comparing with other languages?
2. How about the Clojure language in industry? Are there any companies use Clojure in their projects?




Clojure is a general purpose language. It's very good at everything. Based on my observations, it seems to be used for web applications, long running services, analysis tasks and tools, which is pretty much everything you'd be likely to code these days. That's not to say it's not used effectively for other things - I'm just mentally organizing what I see it commonly used for now.

I am working for a company that uses Clojure. We have a web application in Clojure and Clojurescript, and our analysis engine is in Clojure using core.logic. What I personally really love about this choice is because of the flexibility and expressiveness of Clojure (especially with core.logic) we can pack a lot of power in very little code. We can get by with a smaller team and we effect changes in the system much more quickly than I've experienced with other similarly sized projects.

I also really love how easy it is to write Clojure. Nobody was more skeptical of lisp-syntax than me, but structured editing (paredit) along with a connected live REPL is insanely powerful. I find it more productive than both Java with it's powerful IDEs and languages like Ruby and Python with their already rapid and flexible development models.

 
Sean Corfield
Rancher
Posts: 379
22
Mac OS X Monad Clojure Linux
  • Likes 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Like Norman, I work for a company that uses Clojure primarily as a general purpose language, as part of a large web application (an Internet dating platform). We use Clojure to interact with MySQL, MongoDB, various third party web services (both REST and SOAP, both JSON and XML). We generate HTML emails, we process large log files, we do pretty much everything with Clojure that we might otherwise do with Java - but with a fraction of the lines of code that Java would force us to write. We love immutability because we don't have to worry about thread safety, locking strategies and synchronization. We have access to easy concurrency when we need it - because of immutability and the concurrency primitives in Clojure itself. Immutability also makes it easier to reason about our code and to reuse small, isolated functions in more situations.

So I'd say that it isn't so much that Clojure itself is better than other languages at several of these things but that the core concepts behind Clojure make solving these problems easier. The concepts lead to simple, powerful code, based on a consistent set of strong abstractions.
 
No more fooling around. Read this tiny ad:
We need your help - Coderanch server fundraiser
https://coderanch.com/wiki/782867/Coderanch-server-fundraiser
reply
    Bookmark Topic Watch Topic
  • New Topic