Skip to content

Instantly share code, notes, and snippets.



  • NYC
View GitHub Profile
View gist:69936fde1a9006339e0c3750ea367d9e
### Keybase proof
I hereby claim:
* I am lambdahands on github.
* I am lambdahands ( on keybase.
* I have a public key ASCd2qx2yxQ0BTS86C4_I0TgynzVtUBNqahQMGLTyMB8jQo
To claim this, I am signing this object:
View SketchSystems.spec
Select New -> New
Select Recent -> Recent
Select Other -> Recent
lambdahands /
Last active May 21, 2018
Clojure + Java

Run this script

Call this in your terminal:

$ clj -Sdeps '{:deps {hello {:git/url "" :sha "02b5ca5c86a800829c6f4aeaf0f83ed016cef49c"}}}' -m hello
View maria-experts.cljs
;; # Maria for Experts
;; This is a short tour of abstractions we've made in the process of building Maria, which are also available while using the system. It is meant for people with experience using functional programming languages who already know how to evaluate forms in Maria. If you're a beginner to Maria or to programming in general, I recommend starting [here](
;; (For the impatient, Command-Enter — Control-Enter on a PC — within a code block with evaluate the code before the cursor.)
;; ## Notebook interface
;; In the notebook tradition exemplified by iPython Notebooks, one has a mix of prose and code with the ability to visualize the results of evaluating a particular piece of code.
View phrases.clj
(ns sql-formatter.core)
(def phrases
{:begin-clauses #{"left" "right" "inner" "outer" "group" "order"}
:end-clauses #{"where" "set" "having" "join" "from" "onto" "union"}
:logical #{"and" "or" "when" "else" "end"}
:quantifiers #{"in" "all" "exists" "some" "any"}
:dml #{"insert" "update" "delete"}
:misc #{"select" "on"}})
lambdahands / psuedo_code.clj
Last active Aug 29, 2017
Clojure behavioral dispatch psuedo-code
View psuedo_code.clj
(defprotocol ISpeak
(hello [this]))
(defbehavior ::philip
(hello [_]
(println "Hello, my name is Philip!")))
(defdispatch Person [this]
[(:name this) (:age this)])
View fruit_checkboxes.cljs
(ns nightcoders.fruit-checkboxes
(:require [reagent.core :as r]))
;; Initial State
(def choices [:apple :apricot :banana :mango :orange :plum])
(def max-choices 2)
(def state (r/atom []))
lambdahands / error.clj
Last active Dec 20, 2016
Datomic Client Errors
View error.clj
(require '[clojure.core.async :refer [<!!]]
'[datomic.client :as client])
; Connection config incomplete for brevity
(def conn (<!! (client/connect {:db-name "mydb"})))
(<!! (client/pull (client/db conn) {:selector [:db/doc]}))
; Produces data as error message.
; Value on path [:datomic.client/http-error :cause] is a spec explaination:
{:cognitect.anomalies/category :cognitect.anomalies/incorrect
lambdahands /
Created Sep 28, 2015
FlowType and CSS Modules


So basically FlowType doesn't know about CSS Modules, a really handy way of dealing with the plagues of CSS in codebases (global variables and dependency wackiness mainly).

What WebPack allows us to do is "require" CSS files and use their class names:

import styles from "my_styles.css";
import React from "react";
module ListExtra = struct
open Core.Std
(*- Maps a function to each "column" in a list of "rows".
mapv [[1;2;3]; [3;4;5]] ~f:(List.fold ~init:0 ~f:(+));;
- : int list = [4; 6; 8]
let mapv ls ~f = let open List in
let cmp x y = if length x = length y then 0
You can’t perform that action at this time.