Skip to content

Instantly share code, notes, and snippets.

@triclops200
triclops200 / Voronoi stuff.clj
Last active August 29, 2015 14:22
Works. Need to fully port tonight then publish as open source.
(ns test-sketch.core
(:require [quil.core :as q]
[quil.middleware :as m])
(:gen-class))
(import megamu.mesh.Voronoi)
(def minr 10)
(def maxr 100)
;; gorilla-repl.fileformat = 1
;; **
;;; #Clojure Report
;; **
;; @@
(ns clojure-report.clojure-report
(:require [gorilla-plot.core :as plot])
(:require [clojure.core.typed :as t]))
1 3 4 5 7 8 2 3 4 9
20 30
45
108 202
@triclops200
triclops200 / markov.clj
Created August 20, 2014 17:22
markovV2
(defn increment-counter [res word]
(update-in res [word] (fnil inc 0)))
(defn increment-link [dict word1 word2]
(update-in dict [word1] increment-counter word2))
(defn split-text [text]
(filter #(not (re-matches #"\s+" %)) (clojure.string/split text #"[.!?>\-\"\*\)\(]")))
(defn fix-sentences [sentences]
class Literal:
def __init__(self,value):
self.value = value
class State:
def __init__(self,oldstate=None):
if(oldstate != None):
self.oldstate = [oldstate]
else:
self.oldstate = []
(defun iterator-from-combos (&rest lists)
"Takes a set of lists, and returns an iterator that iterates through every
possible combo of values where each value is from the list passed at its
index."
(if (contains nil lists) ;; If any of the passed lists are nil, no combos can be made.
(lambda () (values nil t)) ;; There are no combos, return an empty iterator.
(labels ;; Otherwise, build the combos iterator.
((shift (lists base) ;; Shifts the set of lists down by one.
;; Returns two values, the new lists, and whether we have hit the end
(if (not lists) ;; If no lists have been passed, we are done shifting.
(defun iterator-from-combos (&rest lists)
"Takes a set of lists, and returns an iterator that iterates through every
possible combo of values where each value is from the list passed at its
index."
; If any of the passed lists are nil, no combos can be made.
(if (contains nil lists)
; There are no combos, return an empty iterator.
(lambda () (values nil t))
; Otherwise, build the combos iterator.
(labels

Keybase proof

I hereby claim:

  • I am triclops200 on github.
  • I am triclops200 (https://keybase.io/triclops200) on keybase.
  • I have a public key whose fingerprint is 4431 1C41 2E68 1420 F8BB 42C2 F1FD 4C42 277B 46E7

To claim this, I am signing this object:

(defmacro defmem
[name parms & body]
(let [fname (gensym) memname (gensym)]
`(do (declare ~name)
(letfn [(~fname ~parms ~@body)]
(let [~memname (atom {})]
(defn ~name ~parms
(if (contains? @~memname ~parms)
(get @~memname ~parms)
(do (swap! ~memname assoc ~parms (~fname ~@parms))
(defun nfib (a b c n)
(if (= n 0)
a
(nfib b c (/ (+ b c) a) (1- n))))
(defmacro while (test &body body)
`(do ()
((not ,test))
,@body))