This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(defn separate-by [f coll] | |
"Separates coll into two groups by predicate f | |
example: | |
=> (separate-by odd? (range 20)) | |
[[1 3 5 7 9 11 13 15 17 19] [0 2 4 6 8 10 12 14 16 18]] | |
" | |
(let [groups (group-by (comp boolean f) coll)] | |
[(groups true) (groups false)])) | |
;; or |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def _get_class(class_name): | |
parts = class_name.split(".") | |
module = ".".join(parts[:-1]) | |
m = __import__(module) | |
for comp in parts[1:]: | |
m = getattr(m, comp) | |
return m |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(ns example.app | |
(:require [reagent.core :as reagent :refer [atom]])) | |
(defn app [] | |
[:div | |
[:h1 "Shadow cljs!"]]) | |
(defn mount-root [] | |
(reagent/render [app] (.getElementById js/document "app"))) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(defn lazy-file-lines [file] | |
(letfn [(helper [rdr] | |
(lazy-seq | |
(if-let [line (.readLine rdr)] | |
(cons line (helper rdr)) | |
(do (.close rdr) nil))))] | |
(helper (clojure.java.io/reader file)))) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(ns gist.core | |
(:require [clojure.string :as str]) | |
(:import (java.io File) | |
(java.awt.image BufferedImage | |
WritableRaster) | |
(javax.imageio ImageIO)) | |
(:gen-class)) | |
(defn save-pixels-as-png |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(def conn (atom nil)) | |
(defn ensure-conn [config] (swap! conn #(or % (connect config)))) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import json | |
from functools import wraps | |
from hashlib import sha1 | |
CACHE_DIR = '_cache/' | |
MAX_FILENAME_LENGTH = 40 | |
class CacheNotFound(Exception): | |
pass |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;; https://twitter.com/RobStuttaford/status/1095434901950734337 | |
(defn copy-to-clipboard [val] | |
(let [el (js/document.createElement "textarea")] | |
(set! (.-value el) val) | |
(.appendChild js/document.body el) | |
(.select el) | |
(js/document.execCommand "copy") | |
(.removeChild js/document.body el))) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(defn str->int | |
([s] (str->int s 10)) | |
([s base] | |
#?(:clj (java.lang.Integer/parseInt s base) | |
:cljs (js/parseInt s base)))) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(ns edn-pprint.core | |
(:require | |
[clojure.pprint :refer [pprint]] | |
[clojure.edn :as edn])) | |
(pprint (edn/read-string (apply str (line-seq (java.io.BufferedReader. *in*))))) |
OlderNewer