Skip to content

Instantly share code, notes, and snippets.

Avatar

Will Langstroth wlangstroth

View GitHub Profile
View memoize.js
// Crockford's
function memoizer(memo, fundamental) {
var shell = function (n) {
var result = memo[n];
if (typeof result !== 'number') {
result = fundamental(shell, n);
memo[n] = result;
}
return result;
};
View rename.sh
# For those without rename
for i in *; do mv $i $i.mp3; done
# or
for f in *;do mv $f ${f/test/prod};done
# replace text in lots of files
perl -pi -e 's/wrong/right/g' *
View random.hs
import System.Random
randPairs :: (RandomGen g, Random a) => (a,a) -> g -> [(a,a)]
randPairs range gen = zip as bs
where (a,b) = split gen -- create two separate generators
as = randomRs range a -- one infinite list of randoms
bs = randomRs range b -- another
seed = 13561956 :: Int
mygen = mkStdGen seed
View loop.py
prod = 1
for i in [1,2,3]:
prod *= i
View foldl.hs
prod = foldl (*) 1 [1,2,3]
View reduce.py
prod = reduce(operator.mul, [1,2,3], 1)
View failbuzz.js
for (var i = 1; i <= 100; i++) {
if (i % 3 == 0 && i % 5 == 0) {
print "FizzBuzz";
} else if (i % 3 == 0) {
print "Fizz";
} else if (i % 5 == 0) {
print "Buzz";
} else {
print i;
}
@wlangstroth
wlangstroth / fizz.rb
Created Mar 29, 2011
still ugly, but I like it better
View fizz.rb
#!/usr/bin/env ruby
(1..100).each do |n|
out = ""
if n.modulo(3) == 0
out += "Fizz"
end
if n.modulo(5) == 0
out += "Buzz"
end
View localstorage.js
localStorage.setItem(key, value);
localStorage.getItem(key);
localStorage.removeItem(key);
localStorage.clear();
@wlangstroth
wlangstroth / index.html.slim
Last active Aug 2, 2016
html5boilerplate in slim
View index.html.slim
doctype html
/[if lt IE 7]
html.no-js.lt-ie9.lt-ie8.lt-ie7 lang="en"
/[if IE 7]
html.no-js.lt-ie9.lt-ie8 lang="en"
/[if IE 8]
html.no-js.lt-ie9 lang="en"
| <!--[if (gte IE 8)]<!-->
<html class="no-js"> <!--<![endif]-->
head
You can’t perform that action at this time.