background preloader

Home

Home
Clojure is a dynamic programming language that targets the Java Virtual Machine (and the CLR, and JavaScript). It is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language - it compiles directly to JVM bytecode, yet remains completely dynamic. Every feature supported by Clojure is supported at runtime. Clojure provides easy access to the Java frameworks, with optional type hints and type inference, to ensure that calls to Java can avoid reflection. Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system.

http://clojure.org/

Object Computing, Inc. - Java News Brief - March 2009 by R. Mark Volkmann, Partner Object Computing, Inc. (OCI) last updated on 6/2/13 First hundred days of Clojure In politics you have a one hundred days period of grace. In December I started to work with Clojure, so I guess it’s time to have a clojure look. In the last couple of years I encountered a couple of different languages. At scoyo it was ActionScript and Flex from Adobe.

Programming Hadoop with Clojure This article is a short introduction into programming Hadoop using Clojure language. Introduction The Hadoop is free implementation of infrastructure for scalable, distributed computing. It was started as implementation of ideas of MapReduce and GFS, that was introduced by Google, but later, many different projects were included into it. 7 Rules for Writing Clojure Programs « Two Guys Arguing Over the past 5 months, I’ve had the incredible opportunity at Revelytix to write Clojure every day and get paid for it. 5 months is an incredibly short time to pretend to have learned anything, but I can feel the beginnings of a style emerge in my programming and while writing a small program some ideas congealed into actual words that I thought I’d capture here. Update: Ugh. I really messed up. As it has been noted in the comments below, on Hacker News and even Twitter, my final solution is much (much) slower thanks to it’s not one, but two sorts. In the end, the whole thing is doubly redundant as clojure.contrib.seq-utils implemented a function ‘frequencies’ which will be in 1.2′s clojure.core. It uses ‘reduce’ and you should too.

Clojure Documentation This guide covers building a simple web-application using common Clojure libraries. When you're done working through it, you'll have a little webapp that displays some (x, y) locations from a database, letting you add more locations as well. It's assumed that you're already somewhat familiar with Clojure. If not, see the Getting Started and Introduction guides. This work is licensed under a Creative Commons Attribution 3.0 Unported License (including images & stylesheets). The source is available on Github.

Light Table by Chris Granger Here's a much higher quality video: Despite the dramatic shift toward simplification in software interfaces, the world of development tools continues to shrink our workspace with feature after feature in every release. Even with all of these things at our disposal, we're stuck in a world of files and forced organization - why are we still looking all over the place for the things we need when we're coding? Why is everything just static text? Bret Victor hinted at the idea that we can do much better than we are now - we can provide instant feedback, we can show you how your changes affect a system.

Closure (computer science) def start(x): def increment(y): return x+y return increment The closures returned by start can be assigned to variables like first_inc and second_inc. Invoking increment through the closures returns the results below: Learning Clojure Some paragraphs in [ ] are author notes. They will be removed as the page matures. You should be able to read the text OK if you ignore these notes. brool » Blog Archive » Pattern Matching In Clojure Updated: Note that this is available as a clojars module. Clojure code density seems to be pretty good. There are a fair number of convenient shortforms in the language; for example, associative datatypes all act as a function — so given a hash map you can reference it with (my-hashmap :key). The base language itself is probably about as expressive as Python (or a bit better), but you have the added advantage of being able to use macros as needed to really get the code density up.

Mark Volkmann's Clojure Page Mark Volkmann's Page This page contains resources related to the Clojure programming language. Article Change History Sounds Even Jennifer Aniston has quit using other programming languages and now prefers Clojure.

Related: