Skip to content

Instantly share code, notes, and snippets.

@ysimonson
ysimonson / gist:5877284
Last active February 22, 2016 19:56
LinkedIn OAuth2 authentication over tornado
from tornado import auth, httpclient, httputil, escape
import urllib.request
import urllib.parse
import urllib.error
import functools
REQUEST_TIMEOUT = 20.0
class LinkedInMixin(auth.OAuth2Mixin):
@ysimonson
ysimonson / gist:4401171
Created December 28, 2012 19:38
Sudoku puzzle generator created in Haskell
import System.Random
import Data.Set (Set, unions, fromList, member)
import Data.Map (Map, singleton, elems, (!), insert)
import Debug.Trace (trace)
main :: IO ()
main = do
rng <- newStdGen
layout <- return (createRandomLayout rng 0.1)
putStr (stringifyLayout layout)
@ysimonson
ysimonson / gist:3173276
Created July 24, 2012 23:11
ZMQ bug (working script)
var zmq = require("zmq");
var socket = zmq.socket("xrep");
socket.bindSync("ipc:///tmp/zmq-issue");
socket.on("message", function(envelope, _, name) {
socket.send([envelope, new Buffer(0), "Hello, " + name.toString()]);
});
@ysimonson
ysimonson / gist:3173269
Created July 24, 2012 23:10
ZMQ bug (failing script)
var util = require("util"),
zmq = require("zmq"),
events = require("events");
function Socket(zmqSocket) {
var self = this;
self._zmqSocket = zmqSocket;
self._zmqSocket.on("error", function(error) {
self.emit("error", error);
@ysimonson
ysimonson / gist:1313774
Created October 25, 2011 18:37
Telephone words in Haskell
import Data.Char
telephoneWords :: String -> [String]
telephoneWords [] = [[]]
telephoneWords (digit : digits) =
[letter : rest
| letter <- digitToLetters digit, rest <- telephoneWords digits]