Starting from:
lein new foo
cd foo
Say I have a random JAR file that is not available in any repository:
touch README.md
| #!/usr/bin/env bash | |
| # fresh-chrome | |
| # | |
| # Use this script on OS X to launch a new instance of Google Chrome | |
| # with its own empty cache, cookies, and user configuration. | |
| # | |
| # The first time you run this script, it will launch a new Google | |
| # Chrome instance with a permanent user-data directory, which you can | |
| # customize below. Perform any initial setup you want to keep on every |
| ;; Demonstration of JVM dead code elimination in Clojure 1.2 and 1.5 | |
| ;; | |
| ;; This Clojure script demonstrates some of the effects of dead code | |
| ;; elimination in the JVM. For unknown reasons, the bytecode produced | |
| ;; by Clojure 1.2.1 is more susceptible to elimination than the | |
| ;; bytecode produced by Clojure 1.5.1, making it seem like 1.2.1 is | |
| ;; faster. But when the code is forced to do real work, the difference | |
| ;; disappears. | |
| ;; | |
| ;; My results with Clojure 1.2.1: |
| /* Demonstration of dead-code elimination in the JVM. | |
| * | |
| * This class demonstrates some of the difficulties of benchmarking | |
| * code which may be subject to dead-code elimination by the JVM. | |
| * There are two loops, both calling the same function. But only the | |
| * second loop actually uses the result of the function. | |
| * | |
| * When I run this code, I get results like this: | |
| * | |
| * Dead code: |
| ;; Some example error messages resulting from common mistakes | |
| ;; using Datomic 0.8.4138 | |
| (ns errors | |
| (:use [datomic.api :as d :only (db q)])) | |
| (def uri "datomic:mem://database") | |
| (d/create-database uri) |
| (ns one) | |
| (defn example-function [] | |
| (println "Hello from example.one")) |
| ;; Demonstration of pair-wise indentation for Clojure syntax | |
| (let [local-symbol-one | |
| (expression-to-compute-symbol-one) | |
| local-symbol-two | |
| (expression-to-compute-symbol-two)] | |
| (body-expressions)) | |
| (def a-map | |
| {:com.example.application/one |
| #!/bin/bash | |
| BASEDIR=testcomponentclojureversion | |
| rm -rf "$BASEDIR" | |
| mkdir -p "$BASEDIR" | |
| pushd "$BASEDIR" > /dev/null | |
| echo "" | |
| echo "Testing Clojure 1.8.0 and Component 0.4.0" |
| ;; Example showing that I cannot convey data from an exception within | |
| ;; a transaction. | |
| (ns example | |
| (:require [datomic.api :as d])) ; Datomic Free 0.8.4007 | |
| (def uri "datomic:mem:example") | |
| (d/create-database uri) |
| ;; Example implementation of Norvig's Spellchecker in Clojure, | |
| ;; using core.async | |
| ;; | |
| ;; There are probably some bugs in this. | |
| ;; | |
| ;; Original problem: https://github.com/ericnormand/spelling-jam | |
| ;; from Lambda Jam, Chicago, 2013: http://lambdajam.com/ | |
| ;; | |
| ;; Clojure core.async introduction: | |
| ;; http://clojure.com/blog/2013/06/28/clojure-core-async-channels.html |