Skip to content

Instantly share code, notes, and snippets.

@JakeCoxon
JakeCoxon / CombinedIterator.scala
Created January 13, 2014 17:53
An iterator that iterates two secondary iterators in parallel
class CombinedIterator[A, B](first: Iterator[A], second: Iterator[B]) extends Iterator[(Option[A], Option[B])] {
def hasNext = first.hasNext || second.hasNext
def next = (if (first.hasNext) Some(first.next) else None, if (second.hasNext) Some(second.next) else None)
}
.knob {
width: 40px;
height: 40px;
-webkit-border-radius: 20px;
-moz-border-radius: 20px;
border-radius: 20px;
position: relative;
background-color: #F6F4F4;
background-color: #f2f0f0;
background-image: -moz-linear-gradient(top, #f6f4f4, #edebeb);
for(var b = $("systemBody_controls_0_body_grid_table").querySelectorAll("tr"), k = 0, id, c; k < b.length; k++) { id = b[k].querySelector("td").innerText, c = document.createElement("div"), c.innerHTML = "<a href=\"http://ovogentracktest:8091/#CUS1000.SCR?CUSTOMER="+id+"\">"+id+"</a>", document.body.appendChild(c); };
@JakeCoxon
JakeCoxon / gist:10720090
Created April 15, 2014 10:13
Print stdin without duplicates
object Unique {
def main(args: Array[String]) {
val h = collection.mutable.Set[String]()
def uniq(ln : String) = Some(ln) filter (h.add(_))
for (ln <- io.Source.stdin.getLines;
ln <- uniq(ln)) {
println(ln)
}
@JakeCoxon
JakeCoxon / gist:11124781
Created April 20, 2014 20:42
arduino pressure sensor
void setup() {
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(14, INPUT);
}
grep -E 'ExceptionLogger: .+ Account\(' --line-buffered | perl -lpe 's/^.+?Account\(([a-z0-9]+).+/Account \1/g' | perl -ne '$H{$_}++ or print' | wc -l
@JakeCoxon
JakeCoxon / promise-tracker.js
Last active August 29, 2015 14:01
Track promises and fire event when all finish
function PromiseTracker(changeFunc) {
var tracked = [];
var events = [];
function fireOnChange(isActive) {
for (var i = 0; i < events.length; i++)
events[i](isActive);
}
function removePromise(promise) {
grep regex file | perl -ne '$H{$_}++ or print'
@JakeCoxon
JakeCoxon / grammar-example.scala
Last active August 29, 2015 14:01
String/Graph grammar
val form1 = StringForm("aAabBbaB")
val grammar1 = new StringGrammar(
"A" -> "aAB",
"A" -> "aa",
"B" -> "bbbb")
val derivation1 = StringDerivation("aAB")
form1.applyFirst(grammar1)
form1.applyFirst(derivation1)
@JakeCoxon
JakeCoxon / behaviour-tree.html
Last active August 29, 2015 14:04
Attempt at simple concurrent behaviour trees in Javascript
<html>
<head>
</head>
<body>
<script>
var rootContext = {
loop: function loop( context, endPromise, times, _ ) {