Skip to content

Instantly share code, notes, and snippets.

Avatar

John Tantalo tantalor

View GitHub Profile
@tantalor
tantalor / quine.pl
Created Jan 27, 2011
A perl quine.
View quine.pl
#!/usr/bin/perl
my ($q, $n) = ("'", chr(10));
my $s = '#!/usr/bin/perl%smy ($q, $n) = ("%s", chr(10));%smy $s = %s%s%s;%sprintf $s, $n, $q, $n, $q, $s, $q, $n, $n;%s';
printf $s, $n, $q, $n, $q, $s, $q, $n, $n;
View ipa.js
// This work is licensed under the Creative Commons Attribution 3.0 United States License. To view
// a copy of this license, visit http://creativecommons.org/licenses/by/3.0/us/ or send a letter
// to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.
// Copyright 2009 John Tantalo <john.tantalo@gmail.com>
(function () {
// get selection
var selection = window.getSelection ? window.getSelection() :
document.getSelection ? document.getSelection() :
@tantalor
tantalor / reservoir.py
Created Jul 2, 2013
Testing whether reservoir sampling works when you sample the RNG only once. reservoir1: Samples RNG once per stream element. reservoir2: Samples the RNG once per stream.
View reservoir.py
from random import random as rand
def reservoir1(stream):
i = 1
choice = None
for value in stream:
if rand() * i < 1:
choice = value
i = i + 1
return choice
View github.jquery.js
// http://aboutcode.net/2010/11/11/list-github-projects-using-javascript.html
jQuery.githubUser = function(username, callback) {
jQuery.getJSON("http://github.com/api/v1/json/" + username + "?callback=?", callback);
}
jQuery.fn.loadRepositores = function(username) {
this.html("<span>Querying GitHub for repositories...</span>");
var target = this;
@tantalor
tantalor / javascript_bookmarklet_builder.pl
Created Oct 3, 2011
Perl script to URI-escape JavaScript for bookmarklets
View javascript_bookmarklet_builder.pl
#!/usr/bin/env perl
#
# Written by John Gruber, taken with permission from:
# http://daringfireball.net/2007/03/javascript_bookmarklet_builder
use strict;
use warnings;
use URI::Escape qw(uri_escape_utf8);
use open IO => ":utf8", # UTF8 by default
":std"; # Apply to STDIN/STDOUT/STDERR
View oauth.py
#! /usr/bin/python
# -*- coding: utf-8 -*-
# (The MIT License)
#
# Copyright © 2009 John Tantalo
#
# Permission is hereby granted, free of charge, to any person obtaining a copy of
# this software and associated documentation files (the ‘Software’), to deal in
# the Software without restriction, including without limitation the rights to
@tantalor
tantalor / newcomments.pl
Created Nov 8, 2013
A perl script which outputs the usernames for new comments on Hacker News, preceded by the date.
View newcomments.pl
#!/usr/bin/perl
my $url = "https://news.ycombinator.com/newcomments";
sub html {
`curl get $url 2>/dev/null`;
}
printf "# %s", `date`;
View strip_tags.py
#! /usr/bin/python
# -*- coding: utf-8 -*-
# (The MIT License)
#
# Copyright © 2009 John Tantalo
#
# Permission is hereby granted, free of charge, to any person obtaining a copy of
# this software and associated documentation files (the ‘Software’), to deal in
# the Software without restriction, including without limitation the rights to
@tantalor
tantalor / catalan.py
Created Jun 3, 2012
linear algorithm to generate catalan numbers
View catalan.py
def catalan():
"""Yields catalan numbers: 1 1 2 5 14 42 132..."""
n = 0
c = 1
while 1:
yield c
n = n+1
c = c * 2 * (2*n-1) / (n+1)
# print the first ten catalan numbers
@tantalor
tantalor / graph.js
Created Apr 26, 2012
liquidGraph minimal no-solution
View graph.js
{"polys":[{"fillColor":"110-hsb(0.1820702975615859,0.7,1)-hsb(0.38207029756158595,0.9,1)","vertices":[{"x":0.0380517503805175,"y":0.25799086757990863},{"x":0.11643835616438353,"y":0.25722983257229837},{"x":0.13318112633181123,"y":0.21232876712328766},{"x":0.1582952815829528,"y":0.27853881278538817},{"x":0,"y":0.2808219178082192},{"x":0.1537290715372907,"y":0},{"x":0.33409436834094364,"y":0.2808219178082192},{"x":0.1811263318112633,"y":0.27929984779299843},{"x":0.20319634703196343,"y":0.21232876712328766},{"x":0.2161339421613394,"y":0.25494672754946723},{"x":0.29147640791476404,"y":0.258751902587519},{"x":0.1552511415525114,"y":0.04033485540334855}]}],"particles":[]}
You can’t perform that action at this time.