Booでクイックソート

3行で書く。

import System.Console

def qsort(xs as List) as List:
  return xs if len(xs) <= 1
  return qsort([x for x as int in xs[1:] if x < cast(int,xs[0])]) + xs[0:1] + \
    qsort([x for x as int in xs[1:] if x >= cast(int, xs[0])])

xs = [1,9,2,8,3,7,4,6,5,0] 
for x in qsort(xs):
  Write("{0} ", x)

/* 結果
0 1 2 3 4 5 6 7 8 9
 */

文法はPythonなんですがタイプセーフなんで混乱しまくり。こんな短いソース書くのにも四苦八苦でした。(^^; 早く言語仕様のドキュメントが欲しいよ〜