Skip to content

Instantly share code, notes, and snippets.

@angelworm
angelworm / load_module.py
Last active August 29, 2015 14:01
モジュールが存在するときにのみimportしてくれるやつ
def load_module(m):
import imp
try:
f, p,d = imp.find_module(m)
return imp.load_module(m, f, p, d)
except:
return None
random = load_module("random")
hoge = load_module("hoge")
@angelworm
angelworm / hoge.m
Created June 3, 2014 10:27
Objective-Cでメソッドチェーンやる奴
#import <Cocoa/Cocoa.h>
@class Hoge;
typedef Hoge *(^setter)(int);
@interface Hoge : NSObject
@property int a,b;
@property (nonatomic, readonly, copy) setter setA;
@property (nonatomic, readonly, copy) setter setB;
@angelworm
angelworm / huge.hs
Created June 19, 2014 09:29
男装の麗人
import Control.Monad
import Control.Applicative
import Control.Monad.State
import Control.Monad.Writer
newtype A = A [B] deriving(Show)
newtype B = B Int deriving(Show)
type Checker a = StateT Int (WriterT [String] Maybe) a
@angelworm
angelworm / avator.svg
Created August 4, 2014 01:31
アイコンを200ポリゴンで頑張る 参考: http://alteredqualia.com/visualization/evolve/
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@angelworm
angelworm / avator30.svg
Created August 4, 2014 01:33
アイコンを30ポリゴンで 参考:http://alteredqualia.com/visualization/evolve/
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@angelworm
angelworm / A.hs
Last active August 29, 2015 14:05
男装の麗人
import Data.Char
import Data.List
import Data.Function
import Data.Monoid
comp::String->String->Ordering
comp (as@(a:ax)) (bs@(b:bx))
| isNumber a && isNumber b =
ncomp as bs <> (comp `on` dropWhile isNumber) as bs
| otherwise = compare a b <> comp ax bx
@angelworm
angelworm / make10.rkt
Created January 17, 2015 05:54
4つの数字から10を作る問題のやつ
#lang racket
(require racket/control)
(define (amb args)
(shift k
(for ([v args])
(k v))))
(define (perm li)
(if (null? (cdr li))
@angelworm
angelworm / input.sql
Created August 11, 2015 21:51
ideoneでSQLを使う+再帰
create table inputtmp (v integer);
create table input (i integer primary key autoincrement, v integer);
.separator X " "
.import /dev/stdin inputtmp
.headers on
.mode column
.separator "|" "\n"
delete from inputtmp limit 1;
insert into input select v from inputtmp;
@angelworm
angelworm / a_smart_dashboard_have_my_id.user.js
Created February 26, 2012 16:35 — forked from syoichi/a_smart_dashboard_have_my_id.user.js
quoteをすべて削除する機能に書き換え
// ==UserScript==
// @name quote remover
// @namespace test
// @description quote/regular postを全部削除します
// @include http://www.tumblr.com/dashboard*
// @author joodle
// @compatibility Firefox 5.0(Scriptish 0.1), Chrome 12.0.742.112, Opera 11.50
// @charset UTF-8
// @version 1.4
// ==/UserScript==
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# Copyright 2007 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0