Skip to content

Instantly share code, notes, and snippets.

Creighton Kirkendall ckirkendall

  • Blue Manta Consulting
  • Cincinnati, Ohio
Block or report user

Report or block ckirkendall

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@ckirkendall
ckirkendall / core.clj
Created May 9, 2018
Simple Event Simulation in Clojure
View core.clj
(ns sim-cincyfp.core)
(def min (* 1000 60))
(def min5 (* 5 min))
(def min10 (* 10 min))
(def min15 (* 15 min))
(def min30 (* 30 min))
;; ---------------------------------------------------------------------
;; Generating Events
@ckirkendall
ckirkendall / data.json
Last active Mar 21, 2017 — forked from ChrisJamesC/data.json
d3js: text in circles + json
View data.json
{"nodes":[
{"x":80, "r":40, "label":"Node 1"},
{"x":200, "r":60, "label":"Node 2"},
{"x":380, "r":80, "label":"Node 3"}
]}
View data.clj
(ns wine-fun.data
(:require [clojure.java.io :as io]
[clojure.data.csv :as csv]))
(def training-data
(let [data (with-open [in-file (io/reader "data/winequality-data.csv")]
(drop 1 (doall
(csv/read-csv in-file))))
control-count (int (/ (count data) 10))
View other
<security-domain name="other" cache-type="default">
<authorization>
<policy-module code="Delegating" flag="required"/>
</authorization>
</security-domain>
@ckirkendall
ckirkendall / core.clj
Created Feb 16, 2015
monadic parser combinators
View core.clj
(ns parser.core
(:require
[clojure.algo.monads :refer [defmonad with-monad state-t m-reduce]]))
(defmonad either-m
[m-result (fn [[side value]] {:side side, :value value})
m-bind (fn [mv mf] (mf [(:side mv) (:value mv)]))])
(defn left [v]
View bank_orc.clj
(ns ocr-kata.core
(:require [clojure.java.io :refer [writer reader resource]]))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; we treat this OCR parser similar to a language
;; parser where input into an AST that is
;; transform and tagged by diffrent analysis steps
;; the ast is then passed to an emmiter.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(def numbers {[0 1 0 1 0 1 1 1 1] 0
View Program.scala
// After reading the trials and tribulations here
// http://www.learningclojure.com/2014/05/fizz-buzz-interview-question.html?utm_source=dlvr.it&utm_medium=twitter
// I decided to see how easy this is using sum types.
// Anser: Pretty easy. :D
object Program {
def numbers(n: Int): Stream[Int] = Stream.cons(n, numbers(n + 1))
View baseball.clj
(ns baseball.core
(:require [clojure.core.async :refer (chan >!! <!! >! <! close! go go-loop)]
[clojure.core.match :refer (match)]))
;; http://www.variousandsundry.com/cs/blog/2014/02/20/baseball-processes/
;; It’s like playing catch in the backyard. You don’t want to play by yourself. So you tell a friend
;; to stand about 20 paces away from you. Once they’re there, they wave their arms to be sure you can
;; see them. Having seen them, you throw them the ball. They throw it back as a solid line drive
;; right at your mitt. End of process.
@ckirkendall
ckirkendall / miner.clj
Last active Aug 29, 2015
Musing about a game engine
View miner.clj
(defprotocol KeyListener
(key [this key-code]))
(defprotocol CollisionListener
(collision [this other]))
(defprotocol BoundsListener
(bounds [this other]))
(defprotocol GravityListener
@ckirkendall
ckirkendall / segments.clj
Last active Aug 29, 2015
distilled version of enliven segments as an external lib
View segments.clj
(ns segments)
(defrecord Lens [fetch putback])
(defprotocol Segment
(-fetch [seg value])
(-putback [seg value subvalue]))
(defn fetch [value seg]
(-fetch seg value))
You can’t perform that action at this time.