2015-02-01から1ヶ月間の記事一覧

LLVM 3.6 がリリース

最近、めっきり追ってないんですが LLVM 3.6 がリリースされました。 ダウンロードやリリースノートは下記を参照してください。 LLVM Project Blog: LLVM 3.6 Release donwload LLVM 3.6 Release Notes — LLVM 3.6 documentation Clang 3.6 Release Notes — …

range-based for で固定回ループ

C++

元ネタ:本の虫: range-based forで固定回ループ 雑に書いてみた。 コード #include <iostream> #include <utility> #include <array> template<std::size_t... Index> std::array<std::size_t, sizeof...(Index)> range_impl(std::index_sequence<Index...>){ return {{ Index... }}; } template<std::size_t N> auto range = range_impl(std::make_…</std::size_t></index...></std::size_t,></std::size_t...></array></utility></iostream>

Ruby の refinements の落とし穴

Ruby の refinements の落とし穴 refinements を使おうとしたらちょっとつらいことになりました。 さて、refinements は using を定義したあとで有効になります。 class X end module Test refine X do def homu "homu" end end end # using 以降で X.homu …

Ruby の refinements を利用してモンキーパッチが適用される範囲を制限する

Ruby 2.1(2.0)で、refinements という機能が実装された。 詳しくはここら辺の記事を参考にしてください。 簡単にいうとモンキーパッチを部分的に適用するための機能です。 今まで class Array # オレオレメソッドを追加する def sum inject :+ end end put…

itunes_bgm.vim つくった

Vim

元ネタ Emacs Lispで bgmを実装してみました. - Life is very short ターミナルから簡単に曲を聞けるbgm.rbというのを作った - hitode909の日記 結構前ですが emacs-itunes-bgm の Vim 版をつくりました。 必要なもの mplayer wget or curl vimproc.vim プラ…