Recommended: Sing it, brah! 5 fabulous songs for developers
JW's Top 5
Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs
Page 2 of 2
Hickey: They can right now. It's mostly an optimization [effort that is required] to make the startup and memory usage smaller and faster.
InfoWorld: What's the intention behind Clojure targeting not just the JVM, but also Microsoft's CLR and JavaScript? Is there a difference in Clojure's relationship with the JVM versus its relationship with the CLR and JavaScript?
Hickey: It actually has sort of the same relationship. Clojure was always designed to be a hosted language. It was designed to have a relationship to the host environment, so if you're a Java developer, you have a bunch of libraries that you want to use and want to continue to use, you know how to deploy Java. Clojure being hosted lets you do all those things and deploy it the same way you always did. The same thing on the CLR -- if you're on the CLR, you have .Net libraries that you care about and you know how to deploy .Net. When you do Clojure there, it's the same story. On JavaScript it's the same idea. We let you reach the JavaScript libraries but run everywhere JavaScript does.
InfoWorld: Clojure is good for multithreaded programming. In this age of multicore programming, shouldn't Clojure have a bright future in that regard?
Hickey: Yes, absolutely. Clojure definitely has a sound model of state that keeps the programmers from having to use locks, and so it's great for concurrent programming and multicore.
InfoWorld: What's the status of Clojure?
Hickey: We're on version 1.3; version 1.4 should be [available] in the next month or two.
InfoWorld: What's going to be the main attractions in that?
Hickey: The main improvement is an extensible reader. You can add your own data types to what can be read.
InfoWorld: You talked about Datomic, which was developed in Clojure. What's the main purpose of Datomic?
Hickey: Datomic is a general-purpose database. It's for use by all JVM languages. It's for Java programmers and Scala and Clojure programmers and JRuby, all those. The appeal is that it's a transactional system that deals well with time and has scalability properties of these new distributed storage services.
InfoWorld: Right now, the marketplace has Oracle, SQL Server, MongoDB. What problem is Datomic solving that they're not solving?
Hickey: It's like traditional databases in being consistent and transactional, and it's like these new databases in being oriented toward flexibility for the application developer. It's bridging those two worlds.
InfoWorld: Is Datomic cloud-based data management?
Hickey: It can be. Our first solution is definitely in the cloud, and that's another area where we're pointedly different. It's meant to run in the cloud, unlike when you try to move a traditional database to the cloud it's a misfit in some ways, because it wants reliable disks and there aren't reliable disks. It's a new way of thinking about storage -- moving storage out of the database.
This article, "Clojure inventor Hickey now aims for Android," was originally published at InfoWorld.com. Follow the latest developments in business technology news and get a digest of the key stories each day in the InfoWorld Daily newsletter. For the latest developments in business technology news, follow InfoWorld.com on Twitter.