Skip to content

Instantly share code, notes, and snippets.

View cultofmetatron's full-sized avatar

Peter de Croos cultofmetatron

View GitHub Profile
@cultofmetatron
cultofmetatron / input.js
Created February 10, 2015 08:46
a reactive remote interface
/*
* this object is a set of streams that can be subscribed to
* forworking with the minimal interface.
*
* up, down, left, right, enter
*
*/
var Rx = require('rx');
var _ = require('lodash');
@cultofmetatron
cultofmetatron / gist:d221dd78399153dac2fb
Last active August 29, 2015 14:09
streamController - broken
var _ = require('lodash');
var PUBNUB = require('pubnub');
var Promise = require('bluebird');
var secret = 'demo_secret';
var pubnub = PUBNUB.init({
publish_key: 'demo',
subscribe_key: 'demo',
secret_key: secret
});
@cultofmetatron
cultofmetatron / gulpfile.js
Created October 17, 2014 03:28
streaming build gulp file
var gulp = require("gulp");
var less = require('gulp-less');
var path = require('path');
var jsx = require('gulp-jsx');
var _ = require('lodash');
var watch = require('gulp-watch');
var plumber = require('gulp-plumber');
var browserify = require('browserify');
var reactify = require('reactify');
var source = require('vinyl-source-stream');
@cultofmetatron
cultofmetatron / logstash.conf
Last active August 29, 2015 14:06
logstash-config
input {
stdin {
type => "stdin-type"
}
file {
type => "syslog"
path => [ "/var/log/*.log", "/var/log/messages", "/var/log/syslog"]
start_position => "beginning"
}
//assume args is an array
var partial = function(fn, args1) {
return function() {
var args2 = Array.protoype.slice.call(arguments);
return fn.apply(this. args1.concat(args2));
};
};
var loop = function(fn) {
@cultofmetatron
cultofmetatron / cascade.js
Last active August 29, 2015 14:05
cascade.js
/*
* cascade takes a function f1, f2, f3 etc, and composes them such that
* f1 is passsed the args to f1 + a next which partiallly applies them to f2 and
* so forth.
*/
//takes the arguments as a array instead of serially
var bind = function(fn, ctx, args) {
return function(args2) {
args2 = args.concat(Array.prototype.slice.call(arguments));
@cultofmetatron
cultofmetatron / gist:6806097
Created October 3, 2013 06:57
rangeLoop scala function
object Foo {
def factorial(n:Int): Int = {
def factorialIter( n: Int , acc: Int, initial: Int) : Int = {
if (initial == n)
acc * initial
else
factorialIter(n, acc * initial, initial + 1)
@cultofmetatron
cultofmetatron / gist:6432759
Created September 4, 2013 04:28
constructor object that creates a proxy for a chain of declared
/* jslint indent: 2 */
var MyObject = function() {
};
MyObject.prototype = Object.create(Object.prototype);
MyObject.prototype.noop = function() {};
<!doctype html>
<html>
<head>
<title>clock</title>
<style type="text/css" media="screen">
.container {
width: 800px;
margin: auto;
}
.chart {
@cultofmetatron
cultofmetatron / gist:5408443
Created April 17, 2013 22:51
simple exploding circle I made with D3
<!doctype html>
<html>
<head>
<title>clock</title>
<style type="text/css" media="screen">
.container {
width: 800px;
margin: auto;
}
.chart {