Skip to content

Instantly share code, notes, and snippets.

From 7fe409840207e3e68169c4dcdef5d4481d826369 Mon Sep 17 00:00:00 2001
From: Brandon Bloom <brandon@brandonbloom.name>
Date: Fri, 31 Jan 2014 17:28:39 -0500
Subject: [PATCH] Use catch :default in browser repl and reflect
---
src/cljs/clojure/browser/repl.cljs | 2 +-
src/cljs/clojure/reflect.cljs | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
@brandonbloom
brandonbloom / show_react.js
Created March 13, 2014 19:46
I ran this in my JS console to see which bits of Facebook were using React.js
setInterval(function() {
var nodes = $$('[data-reactid]');
for (var i in nodes) {
var x = nodes[i];
if (x.style) {
x.style.border = '1px dashed red';
}
}
}, 1000);
@brandonbloom
brandonbloom / gist:10906382
Created April 16, 2014 16:53
syntax-quote + metadata = entertaining output
(clojure.core/with-meta
(clojure.core/seq
(clojure.core/concat
(clojure.core/list
(clojure.core/with-meta
(quote eclj.ext/raise)
(clojure.core/apply
clojure.core/hash-map
(clojure.core/seq
(clojure.core/concat
(import '[clojure.lang Reflector])
(defn static-invoke [class member & args]
(if (zero? (count args))
(try
(Reflector/getStaticField class member)
(catch Exception e
(Reflector/invokeStaticMethod
class member clojure.lang.RT/EMPTY_ARRAY)))
(Reflector/invokeStaticMethod class member (object-array args))))
(require '[clojure.java.shell :refer (sh)])
(defn hexdump [bytes]
(println (:out (sh "hexdump" "-C" :in bytes))))
From eaf81bb9b38995fc19cfdd915574f69fc3415a4a Mon Sep 17 00:00:00 2001
From: Brandon Bloom <brandon@brandonbloom.name>
Date: Fri, 6 Jun 2014 15:32:02 -0400
Subject: [PATCH] eliminate constant loop variable
---
src/cljs/cljs/core.cljs | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/src/cljs/cljs/core.cljs b/src/cljs/cljs/core.cljs
(in-ns 'eclj.core)
(defprotocol Fn
:on-interface clojure.lang.Fn
"Marker interface indicating invokeables that are explictly functions")
(defprotocol IFn
:on-interface clojure.lang.IFn
(^{:on :invoke} -invoke
[this]
From 34fe22fcdfbc1ee34b210808d9b46e337c18cfad Mon Sep 17 00:00:00 2001
From: Brandon Bloom <brandon@brandonbloom.name>
Date: Mon, 23 Jun 2014 19:59:46 -0400
Subject: [PATCH] Clear function from Delays when realized.
---
src/clj/cljs/core.clj | 2 +-
src/cljs/cljs/core.cljs | 12 ++++++------
2 files changed, 7 insertions(+), 7 deletions(-)
$ lein repl
Reflection warning, clojure/tools/nrepl/ack.clj:47:3 - reference to field close can't be resolved.
Reflection warning, clojure/tools/nrepl/middleware.clj:135:3 - call to replaceAll can't be resolved.
Reflection warning, clojure/tools/nrepl/middleware/interruptible_eval.clj:53:52 - reference to field iterator can't be resolved.
Reflection warning, clojure/tools/nrepl/middleware/interruptible_eval.clj:109:3 - call to java.util.concurrent.ThreadPoolExecutor ctor can't be resolved.
Reflection warning, clojure/tools/nrepl/middleware/session.clj:41:54 - call to append can't be resolved.
Reflection warning, clojure/tools/nrepl/middleware/session.clj:230:30 - call to put can't be resolved.
Reflection warning, clojure/tools/nrepl/middleware/session.clj:230:30 - call to put can't be resolved.
Reflection warning, clojure/tools/nrepl/server.clj:42:21 - reference to field close can't be resolved.
Reflection warning, clojure/tools/nrepl/server.clj:133:28 - call to java.net.InetSocketAddress ctor can't be resolv
/** @jsx React.DOM */
var Bubbler = React.createClass({
render: function() {
return <input type="button" onClick={this.props.onFoo} value="Click me"/>;
}
});
var Handler = React.createClass({
onFoo: function() {