タグ

2010年5月8日のブックマーク (2件)

  • 任意の expression に透過的に hook を仕掛けるようなマクロが書けるのではありませぬか? - Cry’s Diary

    以下のコードでやっていることの説明. EXCEPTION_HOOK((expr))と書いておけば, (expr) という C++ の式を実行したら急に例外が来たので……というときに, call stack のようなもので殴られた跡 (この hook が仕掛けられている場所に関する情報) を boost::exception に乗せていきます. call stack の生成ぐらい言語でサポートして欲しいよね,うんうん.終わり. Microsoft Visual C++ 2010 と GCC 4.5.0 で動作を確認済みです. 工夫として, EXCEPTION_HOOK((expr))という文字列が式 expr と同等な C++ の expression として透過的に機能するように見せかけてあります.つまり,たとえば std::string s("42"); int i = EXCEPTIO

    任意の expression に透過的に hook を仕掛けるようなマクロが書けるのではありませぬか? - Cry’s Diary
    ototoi
    ototoi 2010/05/08
  • Ruby より Scala がいいって?? - たかみやの日記

    RubyからScalaに乗り換えた 15 くらいの理由 という記事がすごいブックマーク数だったので、「Scala というのは Ruby を改善したすごい言語なのかな?」と思って超期待して読んですけどもいきなり「メソッドの引数に型指定ができる Scala はエラい」とか言い出しててガッカリしました。。。そもそも Scala は静的型付けで関数型、Ruby は動的型付けで手続き型とパラダイムがまるっきり違い、その守備範囲も異なります。プログラムを書きたいけどあらかじめ問題の定義がよくわかんないとか (人工知能など)、プロトタイプを早く仕上げることがビジネスてきに価値がある場合には当然 Lisp や Ruby などの動的型付けの言語を使うだろうし、大規模プロジェクトでメンバーがいっぱい、スキルもばらばらというケースで形式的なミスをなくしたい場合には JavaScala など静的型付けの言語

    ototoi
    ototoi 2010/05/08
    パラダイムが違うことが開発効率に影響がないとでも?