Skip to content

Instantly share code, notes, and snippets.

View HerringtonDarkholme's full-sized avatar

Herrington Darkholme HerringtonDarkholme

View GitHub Profile
set noautofocus
let hintcharacters = "asdfghjkl;"
@HerringtonDarkholme
HerringtonDarkholme / parser.scala
Last active August 29, 2015 14:06
Parser Combinator requires every regex is initialized before usage
import scala.util.parsing.combinator._
import scala.util.matching.Regex.Match
import scala.util.matching.Regex
import scala.annotation.{switch, tailrec}
object T extends RegexParsers {
abstract class AbstractSelector[S <: AbstractSelector[S]]
// import gif.js
(function(c){function a(b,d){if({}.hasOwnProperty.call(a.cache,b))return a.cache[b];var e=a.resolve(b);if(!e)throw new Error('Failed to resolve module '+b);var c={id:b,require:a,filename:b,exports:{},loaded:!1,parent:d,children:[]};d&&d.children.push(c);var f=b.slice(0,b.lastIndexOf('/')+1);return a.cache[b]=c.exports,e.call(c.exports,c,c.exports,f,b),c.loaded=!0,a.cache[b]=c.exports}a.modules={},a.cache={},a.resolve=function(b){return{}.hasOwnProperty.call(a.modules,b)?a.modules[b]:void 0},a.define=function(b,c){a.modules[b]=c};var b=function(a){return a='/',{title:'browser',version:'v0.10.26',browser:!0,env:{},argv:[],nextTick:c.setImmediate||function(a){setTimeout(a,0)},cwd:function(){return a},chdir:function(b){a=b}}}();a.define('/gif.coffee',function(d,m,l,k){function g(a,b){return{}.hasOwnProperty.call(a,b)}function j(d,b){for(var a=0,c=b.length;a<c;++a)if(a in b&&b[a]===d)return!0;return!1}function i(a,b){function d(){this.constructor=a}for(var c in b)g(b,c)&&(a[c]=b[c]);return d.proto
// import gif.js
(function(c){function a(b,d){if({}.hasOwnProperty.call(a.cache,b))return a.cache[b];var e=a.resolve(b);if(!e)throw new Error('Failed to resolve module '+b);var c={id:b,require:a,filename:b,exports:{},loaded:!1,parent:d,children:[]};d&&d.children.push(c);var f=b.slice(0,b.lastIndexOf('/')+1);return a.cache[b]=c.exports,e.call(c.exports,c,c.exports,f,b),c.loaded=!0,a.cache[b]=c.exports}a.modules={},a.cache={},a.resolve=function(b){return{}.hasOwnProperty.call(a.modules,b)?a.modules[b]:void 0},a.define=function(b,c){a.modules[b]=c};var b=function(a){return a='/',{title:'browser',version:'v0.10.26',browser:!0,env:{},argv:[],nextTick:c.setImmediate||function(a){setTimeout(a,0)},cwd:function(){return a},chdir:function(b){a=b}}}();a.define('/gif.coffee',function(d,m,l,k){function g(a,b){return{}.hasOwnProperty.call(a,b)}function j(d,b){for(var a=0,c=b.length;a<c;++a)if(a in b&&b[a]===d)return!0;return!1}function i(a,b){function d(){this.constructor=a}for(var c in b)g(b,c)&&(a[c]=b[c]);return d.proto
{isArray, isFunc} = require('./util')
class Extractor
FN_ARGS = ///
^function # function
\s* # optional white
[^\(]* # function name
\( # left paren
\s*
([^\)]*) #params
\) # right paren
@HerringtonDarkholme
HerringtonDarkholme / from-py.js
Created April 25, 2014 18:24
Infinite default dictionary in Javascript ES6
function handlerMaker(obj) {
return {
getOwnPropertyDescriptor: function(name) {
var desc = Object.getOwnPropertyDescriptor(obj, name);
// a trapping proxy's properties must always be configurable
if (desc !== undefined) { desc.configurable = true; }
return desc;
},
getPropertyDescriptor: function(name) {
var desc = Object.getPropertyDescriptor(obj, name); // not in ES5
// bad
function Curry(fn) {
var args = Array.prototype.slice.call(arguments, 1);
var len = fn.length - args.length;
var partial = function () {
var partialArg = Array.prototype.slice.call(arguments);
args = args.concat(partialArg);
if (args.length > len) {
throw new Error('wrong argument lenth: Expected ' + len + '; Receive ' + args.length);
'use strict';
// middlewares: array of generator function
function compose(middlewares) {
return function *() {
var i = middlewares.length;
var prev = function *(){};
var current;
while (i--) {
current = middlewares[i];
@HerringtonDarkholme
HerringtonDarkholme / dabblet.css
Created November 15, 2013 16:27
The first commented line is your dabblet’s title
/**
* The first commented line is your dabblet’s title
*/
html {
background: #f06;
background: linear-gradient(-45deg, #bd9999,#282828);
min-height: 100%;
}
.container {
#include <stdio.h>
#include <stdlib.h>
#include <memory.h>
#define MAX 50
int find_solution(int size, int consumed, int min, int max, int *len, int *num);
void start(int);
int distinct;