タグ

ブックマーク / boxnos.hatenablog.com (3)

  • ボクノス - VimのヤバすぎコメントプラグインNERD Commenter

    昨日見つけたコメントプラグインNERD Commenterですが、かなりの高機能っぷりに驚いてます。ヤバイ。 これだけは覚えておけ c コメントのトグル printf("Hello, NERD"); ここで、c /* printf("Hello, NERD"); */ もう一回c printf("Hello, NERD"); いえぃ! セクシーにコメントアウト cs /* * printf("Hello, NERD"); */ やっほぉい。 C言語系でしか使えませんが、ネストしててもコメントアウト出来ちゃう高機能っぷり。凄いっす。 末尾にコメント cA printf("Hello, NERD"); /* */ おぉぉぉぉ。Iもあります。 コメントの削除 cu 無いと困ります。驚いたことにセクシーも消えます。 他にも色々出来るみたい。 設定例 let NERDSpaceDelims = 1

    ボクノス - VimのヤバすぎコメントプラグインNERD Commenter
  • カーネルのリンクリスト - ボクノス

    何故かExt2ファイルシステムについて調べてました。ちょっとカーネルのソースを覗いてみたら、struct list_head構造体がやたら出てくる。気になって、include/linux/list.hを覗いてみると、驚くべき仕組みが隠れてた。 そんなわけで写経。 #include <stdio.h> struct list_head { struct list_head *next, *prev; }; #define INIT_LIST_HEAD(ptr) do { \ (ptr)->next = (ptr); \ (ptr)->prev = (ptr); \ } while(0) static inline void __list_add(struct list_head *new, struct list_head *prev, struct list_head *next) { n

    カーネルのリンクリスト - ボクノス
  • リスト修行 動的に素数を生成したい。 - ボクノス

    前回は、12の素因数分解をするときに、2〜12までのリストを作成し、それから素因数分解をしました。しかし、12が必要とする素数は2と3だけ。12までふるいをかけるのは無駄です。しかも、ふるいが重い!! そんなわけで、素数が必要となってから、素数を生成したい。つまり、 「動的に素数リストを生成したい」 ムズそう・・・とか思ったけど foldで あっさり出来ちゃいました。 (define (primers-filter n p) (remove (lambda (x) (zero? (modulo x n))) p)) (define (make-primers p) (fold-right (lambda (a b) (primers-filter a b)) (iota (car p) (+ (car p) 1)) p)) これだけ。 ポイントは、fold-rightで、これからふるいにか

    リスト修行 動的に素数を生成したい。 - ボクノス
    goinger
    goinger 2008/06/09
    素数
  • 1