Skip to content

Instantly share code, notes, and snippets.

View orb's full-sized avatar

Norman Richards orb

View GitHub Profile
@orb
orb / keys.el
Created June 28, 2014 19:58
emacs custom ansi keybindings
(define-key input-decode-map "\e[1;10A" [M-S-up])
(define-key input-decode-map "\e[1;10B" [M-S-down])
(define-key input-decode-map "\e[1;10C" [M-S-right])
(define-key input-decode-map "\e[1;10D" [M-S-left])
;(define-key input-decode-map "\e[1;9A" [M-up])
;(define-key input-decode-map "\e[1;9B" [M-down])
;(define-key input-decode-map "\e[1;9C" [M-right])
;(define-key input-decode-map "\e[1;9D" [M-left])
user> (defn try-it [ & [x & xs :as all-of-them]]
all-of-them)
#'user/try-it
user> (try-it 1 2 3 4 5)
(1 2 3 4 5)
user> (defn try-it [ & [x & xs :as all-of-them]]
x)
#'user/try-it
user> (try-it 1 2 3 4 5)
@orb
orb / project.clj
Created June 14, 2016 00:31
trypy
(defproject trypy "0.1.0-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.7.0"]
[org.python/jython-standalone "2.5.2"]]
:aliases {"jython"
["trampoline" "run" "-m" "org.python.util.jython"]})
@orb
orb / project.clj
Last active December 25, 2015 23:28
test
(defproject demo "0.1.0-SNAPSHOT"
:description "FIXME: write description"
:url "http://example.com/FIXME"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:dependencies [[org.clojure/clojure "1.5.1"]])
clojure.lang.Compiler$CompilerException: java.lang.RuntimeException: Unable to resolve symbol: if-let in this context, compiling:(NO_SOURCE_PATH:1:1)
at clojure.lang.Compiler.analyze (Compiler.java:6380)
clojure.lang.Compiler.analyze (Compiler.java:6322)
clojure.lang.Compiler$InvokeExpr.parse (Compiler.java:3573)
clojure.lang.Compiler.analyzeSeq (Compiler.java:6562)
clojure.lang.Compiler.analyze (Compiler.java:6361)
clojure.lang.Compiler.analyze (Compiler.java:6322)
clojure.lang.Compiler$BodyExpr$Parser.parse (Compiler.java:5708)
clojure.lang.Compiler$FnMethod.parse (Compiler.java:5139)
clojure.lang.Compiler$FnExpr.parse (Compiler.java:3751)
(defn can-sum-to-zero
([nums]
(can-zero nums #{}))
([nums can-sum-to]
(when (seq nums)
(let [num (first nums)]
(if (can-sum-to (- num))
true
(let [can-also-sum-to (map #(+ num %) can-sum-to)]
(recur (rest nums)
(ns maze.tiles)
;;(print "\u2588 \u2588")
(def tiles1
{0 ["***"
"*!*"
"***"]
1 ["* *"
"* *"
"***"]
@orb
orb / maze.clj
Created July 10, 2013 20:38
maze generator from lambda jam
(ns maze.core
(:use maze.tiles)
(:require [clojure.data.json :as json]))
(defn empty-maze [xsize ysize]
(let [row (into [] (take ysize (repeat 0)))]
(into [] (take xsize (repeat row)))))
(defn all-coords [maze]
(let [xsize (count maze)
(ns logic.nono
(:refer-clojure :exclude [==])
(:use [clojure.core.logic])
(:require [clojure.core.logic.fd :as fd]))
(def max-size 25)
(defn count-ones [marks howmany post-marks]
(conde
[(emptyo marks)
@orb
orb / dollars_and_cents.clj
Last active December 17, 2015 19:58
Skeptics Guide to the Universe - Episode 410 - WTN http://www.theskepticsguide.org/ a core.logic finite domains example
(ns dollars-and-cents
(:refer-clojure :exclude [==])
(:use [clojure.core.logic])
(:require [clojure.core.logic.fd :as fd]))
;; A bank teller made a mistake today. The teller switched the dollars
;; and cents when they cashed a check for Mrs. Jones, giving her
;; dollars instead of cents and cents instead of dollars.
;; After buying a newspaper for 5 cents, Mrs. Jones realized that she