メモ
「ときどきの雑記帖 i戦士篇」日記経由でメモ。あとで読む。
- Haskell プログラミング 〜 純粋関数型言語への誘い〜(http://www.mew.org/~kazu/haskell.pdf)
以下、Python版の実装。出典元は省略。
def qsort(L): if len(L) <= 1: return L return qsort([lt for lt in L[1:] if lt < L[0]]) + L[0:1] + \ qsort([ge for ge in L[1:] if ge >= L[0]])
- エラトステネスのふるい
from itertools import ifilter, count def sieve(): g = count(2) while True: prime = g.next() yield prime g = ifilter(lambda x, prime=prime: x%prime, g)
Pythonさん、無限リストの取り扱いをもっと一般化してください。