2010年2月アーカイブ

ネタ元 に触発されて色々one-linerで書いてみた。 お題としては「100万回乱数生成を行いその平均値を計算する」です。

Perl (5.10.1)

perl -MList::Util=sum -E 'say((sum map rand,1..1e6)/1e6)'

List::Util++

Python (2.6.4)

python -c 'import random as r;print sum([r.random() for x in xrange(1000000)])/1e6'

xrange(1e6)だとwarningが出るので、仕方なく若干長めに。

Ruby (1.8.7)

ruby -e 'p 1000000.times.reduce{|r,i|r+rand()}/1e6'

sumはなかったけどreduceが組み込みのおかげでやたらと短い

PHP (5.2.12)

php -r 'function r1($i){return mt_rand()/mt_getrandmax();} echo array_sum(array_map("r1",range(1,1e5)))/1e5;'

見た目も残念な上に 1e6 だと 何故か動かなくて2重に残念な子でした。

Gauche (0.8.13)

gosh -usrfi-1 -E 'print (/. (fold + 0 (map (lambda(x) (/ (sys-random) RAND_MAX)) (iota 1e6))) 1e6)'

久し振りにScheme書いたよ。

>> Twintersection を改造しました。

参考:前記事

変更点は、

  • 最新100件のみ取得だった followers/friends を全部読み込むようにしました。(いつの間にかfollowers/friends取得APIのページネーションが廃止されてカーソルによるイテレーション方式になってて、取るのが簡単になってた)
  • 最大5件までだった入力欄を任意の数に増やせるようにしました。 但し、API使用量にはご注意を。
  • 結果をアイコンと一緒に出力するようにしました。
  • javascriptのコードが全然モダンな感じじゃなかったのでごりごり書き直しました

2010-02-21 17:05 追記 → IEで動かなかったぽいので修正しました。 ぐふぅ

←のブログパーツに pixiv のイラスト一覧も付けてみました。

pixiv公式のブログパーツではなく、自力でpixivにアクセスしてデータを解析・取得してRSSを吐き出してます。んで、そのRSSをいつものごとく Yahoo!Pipes を通してブログパーツ化してます。

公式パーツとの違いはR-18,R-18G作品も表示できること(何でembed表示がR-18/R-18G表示できてブログパーツが表示できないのかよく分からん) くらいですが..

←の drawrtwitpic のブログパーツを初期状態で非表示にしました。

表示させたい場合は警告文の最後のリンクをクリックしてください。(表示状態は記憶されないので、再表示したらまた非表示になってしまうのですが... (cookie使って記憶させた方がいいかなぁ..

というか、見たいなら直接見に行ったほうが早いかもしれません。 ↓ (直接見に来てくれた方がView数上がって喜ぶので)

Google App Engine の手習いに、 Twitter での「今のFollower」を保存しておくWebサービス、 Twitter Follower Memento を作ってリリースしてみました。

Twitterでの Follower の取得・保存・呼び出し、及び差分表示の機能を備えています。

まぁ、ぶっちゃけて言うと手動 remtter なんですけどね

このブログのMT4->MT5移行で色々食らったものと処置内容のメモ

  • テンプレート・ウィジェットが無くなった → ダッシュボード:テンプレートの初期化をしてからちょこちょこ手動で編集
  • 過去記事のトラックバックURLが無くなった → ダッシュボード:ブログ一覧からまとめて編集→更新 で復活(但し、URLは変わる
  • permanent link の出力先ファイル名の自動生成方法が変更?
    • MT4では、タイトルから /[[:alnum:]_- ]/ を抜き出して s/ /_/g してた。(抜き出せない場合はpost_<連番>)
    • MT5ではさらにそこから s/_/-/g してるっぽい (再構築したらアドレス変わっちゃう...)
    • -> 過去記事のディレクトリに .htaccess ファイルを作成して新しいページにredirectするようにしました。

しかし、何でこんなことになったのやら。 移行元のファイルが何か中途半端だったのかなぁ..

久し振りに pixiv に載せてるやつから引用。
ふと気付いたら自分の最新投稿4件がことごとく裸絵でちょっとびっくり。

そういや、←のTwitpicのパーツ、普通のページでもガンガンえちぃの流してしまってるので、どうしたもんかなー とちょっと悩み中。

ちょっと前から サーバのMySQLを5.1に変えたり
MTを4から5に上げたり作業してます。

しかし、MT5に上げたらテンプレートとウィジェットの設定が吹き飛んでる... orz
とりあえず、記事は読めるようになってると思うので、後は頑張って色々復旧させていきます。

うひー。

先日見つけた、tokenize処理のC++コード(元のコードの酷さを壊さない程度に整えてある)

void tokenize(
    std::vector< std::string >& result,
    const std::string& input,
    const char         delimiter
    )
{
  char*	buf = new (std::nothrow) char[ input.size() + 1 ] ;
  assert( buf != 0 ) ;

  buf[0] = '\0' ;
  char*	buf_ptr = buf ;

  for(std::string::const_iterator it = input.begin() ; it != input.end(); ++it ) {
    const char &c = *it;
    if( delimiter  c || '\r'  c || '\t' == c ) {
      *buf_ptr = '\0' ;
      if( buf[0] ) {
        result.push_back( buf );
        buf_ptr = buf ;
      }
    }
    else {
      *buf_ptr++ = *it ;
    }
  }

  *buf_ptr = '\0';
  if( buf[0] ) {
    result.push_back( buf ) ;
  }

  delete[] buf ;
}

関数始まった途端ツッコミどころである。

ていうか、それ Boost String Algorithms Library で出来るよ。とか、Boost使わないまでも、もっとスマートに書けるよね。 と思ったのでちょちょっと書いてみた。

なんか***基礎文法マスターなるものが流行っているそうなのでやってみる。

2010-02-02 19時追記>

AUTHOR

  • turugina (虎王 剱奈)
  • E-mail: turugina {at} floralcompany.jp
  • pixiv
  • ニジエ

2014年5月

        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

アーカイブ

OpenID対応しています OpenIDについて
Powered by Movable Type 5.2.10

- 警 告 -

本サイトにはいわゆる「18禁画像」(イラスト)へのリンクが存在します。 未成年の方や、その手の画像に不快感を覚える方は、 該当記事(「えちぃの」及び「ちょっとえちぃの」カテゴリ) をご覧にならないようお願いいたします。

上記を理解した上で非表示のブログパーツを表示する
あわせて読みたいブログパーツ
ついった
drawr/pixiv/twitpic