I presented my "Clojure for Business Teams - Decomplecting Data Analysis" talk at Clojure Conj 2015 on Monday. I had some technical issues with my laptop in the beginning, but managed to get past them. The audience was incredibly patient and supportive. I really appreciate that. The video of the talk has already been published on Youtube , and I've included a PDF of the slide deck I used below 1 .…
TL;DR Data analysis has a lot of incidental complexity . Composable abstractions can help reduce this. Clojure solves this for developers, but can this be extended to business users who are non-coders? Developers want to continue writing programs in code, but business teams need ways to discover, configure and run them directly and independently. Could a Yahoo Pipes-like approach to data analysis…
As a long time user of SLIME I was a bit disappointed to see clojure-mode 2.0 drop support for it in favor of nrepl . I looked into nrepl but found it to be not as feature complete as SLIME, at present. Also, I still work on some sizeable Common Lisp code, which relies entirely on SLIME, and I want to be able leverage any tooling work I do across all my projects – so SLIME wins. As it turns…
A while back I'd written about looking up Javadocs from Clojure mode buffers. I got some good feedback on that post, so I thought I'd try and expand on that and see if I could integrate other Clojure documentation sources into a similar workflow. view javadocs in emacs/w3m (click to view full size) Looking up Clojure doc strings within Emacs is really easy. In any Clojure code buffer, you can…
This is my shiny new site hosted on github.com. I used to previously blog at funcall.posterous.com and cynojure.posterous.com , but I think github may be a more natural fit for my edit and publish workflow. After all, most of my professional and hobbyist programming work lives here, so why not my blog. Incidentally, I'm using org-mode in Emacs to author the posts and a modified version of the…
This is the second in a two part post about a Clojure programmer workflow entirely within Emacs. Editing Clojure Some useful navigation key bindings in Clojure-mode, actually any Lisp code editing mode in Emacs, are as follows: Keybinding Command C-M-f forward-sexp C-M-b backward-sexp C-M-a beginning-of-defun C-M-e end-of-defun C-M-x slime-compile-defun C-x C-e slime-eval-last-expression Some of…
This is a brief overview of the way I work in Clojure using Emacs - almost exclusively. Obviously, Emacs is not the only way to interact with Clojure, but it can be a pretty seamless and efficient environment for Clojure, once you become familiar with the powerful extensibility and "mouse-free" efficiency of Emacs. Also, since Emacs uses Lisp as its extension language, there's a lot of value for a…
I've committed a new branch of ECL for iOS, which now requires ECL-11.1.1 (latest stable), and produces functioning device binaries for armv6 and armv7 architectures using Xcode 4 and SDK 4.3. This release has been tested on iPhone and iPad devices running iOS 4.3.1. Please refer to the updated README for further details. https://github.com/kriyative/ecl-iphone-builder/tree/elf Please note that…
I'm releasing clojurejs – a Clojure library for translating a Clojure subset language to Javascript. The code is on github reachable at the following link: http://github.com/kriyative/clojurejs clojurejs is something I've been working on for a few weeks as part of a larger web app in Clojure. The code's a bit crufty (reflects my incremental discovery of the inconsistencies in Javascript),…
There's been a bit of recent interest in building "real" apps using ECL/iOS. While the `eclffi' sample code in the ecl-iphone-builder repo included examples of how to create/call Objective-C classes/methods from Lisp, it was missing the glue to go the other way, which was necessary to implement callbacks in Lisp. I've pushed an update to github which adds this functionality. As an example I…