On Saturday, April 19, 2014 9:15:38 AM UTC-7, Paulo Suzart wrote: > > Hi all, (warning, this is kinda confusing email) > > Been following the list for some time and specially paying attention to > what could be the killer clojure app as Akka is for Scala. >
Etc. > The languages that you do use daily. What was their killer app? What are the 25 killer apps for the Top 25 programming languages as ranked by mention in a survey of programmers? With C, the answer of Unix is fairly straight-forward, but C's popularity is not because people kept making os after os and since the late 70s people have been creating language after language to polish off C's very rough edges. Perl ruled web applications for a bit, by virtue of string processing and regexes. What is the most popular app written in C#? What was the killer app for C++? The primary use case for Python? Not being perl? Objective-C is more popular now than ever in its third decade of existence and that is by virtue of its affiliation with a very successful platform. Android is a more popular platform and, yet, have we seen folks reigniting the passion for java that was there in the late 90s? You also may misunderstand the "killer app" theory, which I think is about how novel applications move platforms from early adopters into a mainstream. The most successful platform of recent times has been the smartphone. Its "killer apps?" Maps, Phone, Music, Messaging, Browser? All of the above? Every new programming language is a commentary on its antecedents. The language designers imagine that a class of algorithms or processes could be more quickly and safely programmed or execute better if a language expressed the solution more clearly. From mathematics, we know that every sufficiently powerful language is as powerful as another. We also know that some problems are undecidable and some programs will yield answers that are occasionally sub-optimal because the correct answer won't be outputted until after the heat-death of the universe. Within a few pages of any book on Clojure, one may see the comments the language makes on predecessors, including Lisp, Java, and Haskell. (Not all comments are along the lines of "they got it wrong.") The primary directive for the language was to make concurrency more manageable while leveraging Lisp's first class and higher order functions and code as data, the jvm's engineering, java's library, and Haskell's laziness. I respectfully submit that you ask the wrong question, just as those who early last decade asked "Where's java's popular desktop app?" What problem does your company have to solve? Are you really going to rewrite all your existing products if you find the most awesome language? If Akka is sliced-bread good, why keep looking? What does technical debt mean to you? What types of bugs show up all the time and would a different language exchange those bugs for easier to find and fix bugs? Can you hire enough great people to make the changeover work, or will it be an uncanny valley disaster as management underestimates resource requirements and time-to-expertise? Does the person using a reliable COBOL program really care that the language hasn't been hip since 1959? Users and customers. That is the focus. If Clojure helps you deliver better value to those groups or if it seems to make problem solving more fun or efficient, use it. Don't expect the advantages to be obvious. The processes that are "obviously" better are the ones more likely to be fads or traditions wrapped in buzzwords. There are no silver bullets. -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.