メディア関係者向けお問い合わせ先 メールでのお問い合わせ: pr-jp@google.com メディア関係者以外からのお問い合わせにはお答えいたしかねます。 その他すべてのお問い合わせにつきましては、ヘルプセンターをご覧ください。
メディア関係者向けお問い合わせ先 メールでのお問い合わせ: pr-jp@google.com メディア関係者以外からのお問い合わせにはお答えいたしかねます。 その他すべてのお問い合わせにつきましては、ヘルプセンターをご覧ください。
メディア関係者向けお問い合わせ先 メールでのお問い合わせ: pr-jp@google.com メディア関係者以外からのお問い合わせにはお答えいたしかねます。 その他すべてのお問い合わせにつきましては、ヘルプセンターをご覧ください。
檜山先生のモナドの説明を純粋関数型言語C++で書いてみました。 #include "stdafx.h" template<int n> struct int_{static const int value=n;}; //例の最初に出てくる副作用ありバージョンはそもそも記述できないのでいきなり副作用なしバージョン。 template<typename T,typename C> struct Countup; template<typename T,int countup> struct Countup<T,int_<countup>> {}; template<typename x,typename y> struct sum_countup5_ex; template<int x,int xc,int y,int yc> struct sum_countup5_ex<Countup<in
メディア関係者向けお問い合わせ先 メールでのお問い合わせ: pr-jp@google.com メディア関係者以外からのお問い合わせにはお答えいたしかねます。 その他すべてのお問い合わせにつきましては、ヘルプセンターをご覧ください。
Lambda abstractions in C++ vs. Scheme This article is to exhibit lambda abstractions in C++ in comparison with those of traditional functional languages (e.g., Scheme). The article will try to demonstrate that "applicable values" in C++ not only look similar to their functional cousins. They are equal in meaning as well. The same can be said for currying. This article will not prove that C++ and S
blog をもう少しコンスタントに更新して行きたいなぁと言う事で,メモ代わり感覚で更新していきます. http://sourceforge.jp/tracker/index.php?func=detail&aid=15209&group_id=3652&atid=13543 の指摘を受けて.これに関わらず,多バイト長の変数(or その配列)から1バイトの配列へのコピー(あるいはその逆)を行う機会にしばしば遭遇するので,この機会に作成しておきます.最も,私の実行環境が全てリトルエンディアンなので,まともにテストできていないのですが・・・ エンディアンの判別 エンディアンの判別に関しては,http://www.math.kobe-u.ac.jp/~kodama/tips-C-endian.html で紹介されている方法を使用する事にします.具体的な方法は,__LITTLE_ENDIAN または
前回の続きです. コードは飽きないうちに読め. これまでのあらすじ: プロパティアクセスを速くしたいから JIT をしようぜ. コンパイラ概観 V8 のコンパイラは JavaScript の AST を機械語に変換する. (AST はパーサがつくる.) AST のツリー構造は, Node クラスのサブクラス一族で構成されている (ast.h) コンパイラは関数の AST である FunctionLiteral オブジェクトをうけとって Code オブジェクトを生成する. AST とコンパイラは(またしても) Visitor パターンでつながる. (Visitor 好きは Strongtalk からの伝統らしい. Strongtalk VM のコンパイラも同じようなことをしている. 20 世紀の残り香が...) AST 側は Vistor のインターフェイスを提供する: //ast.h cl
ウェブっ子の間では Google Chrome の JS 処理系である V8 祭りが絶賛開催中らしい. いつもは出遅れる私もたまにはやんやしたいと思っていろいろ読んでみたものの, VM に食傷気味な自分に気付いた. けれど, そうは言っても祭りは別腹. 一通り騒いでみます. 販促マンガ や 資料 によれば, V8 は以下のような特徴を備えている. hidden class transition と fast property access generational accurate GC accurate だから incremental GC もできる オブジェクトの rellocation はするけど handle は使わず参照元書き換え 中間表現のインタプリタなしの native code 生成. instruction cache コードをみたところ, incremental GC
PImpl イディオム(pointer to implementation idiom)はC++の有名なイディオムのひとつです。ファイルの依存関係を減らしたい場合(つまりヘッダファイルの中で他のヘッダファイルをあまりインクルードしたくない場合)、実装の詳細を完全に隠したい場合などのときに使います。ポイントはヘッダファイルではインターフェースの宣言のみ行い、実装に関する情報はプライベートメンバ変数ですら隠してしまうところにあります。PImpl イディオムではクラスはImplという(名前はなんでもよいのですが)隠蔽されたネストクラスへのポインタのみをメンバ変数に持ちます。 簡単なサンプルで見てみましょう。 widget.hpp: class Widget { public: Widget(); ~Widget(); Widget(const Widget&); Widget& operator
Recent entries 宣伝:C/C++のための開発補助ツール、GCCSenseをリリースしました matsuyama 2010-04-15 宣伝:Rubyのための開発補助ツール、RSenseをリリースしました matsuyama 2010-03-21 Emacsは死んだ matsuyama 2010-02-22 WebアプリケーションをiPhoneに対応させるための技術メモ matsuyama 2009-10-13 tokyo-emacs#x02の個人的レポート matsuyama 2009-09-07 Recent comments replica louis vuitton Anonymous User 2010-12-22 Re:テキスト入力中に補完候補を自動的に表示してくれる auto-complete.el をリリースしました Anonymous User 2010-12
なぜスマートポインタを使いたいのか 以前書いたboost::shared_ptrの記事を読みかえしてみました。 なんともひどい文章だ。何より内容が分かりづらいのが良くない。ということで、もう一度スマートポインタについて整理してみようと思います。 スマートポインタについて考える前に、 そもそもポインタをそのまま使うのが何故いけないのでしょうか。「ポインタが何か」についてはもう分かっているとして、 ポインタを使わなければいけない局面を考えてみましょう。 ポインタがどうしても必要で、かつ真価を発揮するのは動的なメモリ確保と一緒に使うときでしょう。C++ではnew演算子で動的なメモリ確保を行えます。 int main(int argc, char* argv[]) { BIGSTRUCT* ptr = new BIGSTRUCT; ... return 0; } とりあえず、BIGSTRUCTが何
説明 Modern C++ Design なる本が発売されました。 C++ という複雑な言語のまさに真骨頂とでもいうような、 すごい内容でした。 この本では著者の作ったLokiというこれまたすごいライブラリの解説、 という形でジェネリックプログラミングを語ります。 まあ、とにかくすごいんですが、これを作るのはともかく、 使うのなら凡人でもできるだろう、と。 いつの時代も天才の成果物を凡人が使うのだ、と。 つうか使っている内に Loki が簡単に見えるようになってきました。 良い傾向ですな。 template library と GPL は水油もいいとこだと思うんで、 以下に存在する .cc ファイルと .h ファイルには GPL を主張しません。 つかパブリックドメインつうことで。 更新情報 020627. Loki - AbstractFactory。 020622. Loki - Fa
Parsing C++ (March 2001) Introduction I recently became interested in parsing C++. It’s taken me quite a while to gather together various resources from the web, so I thought I’d share my findings with the world in the hope that it saves someone else a bit of time. I strongly recommend getting yourself a copy of The Design and Evolution of C++ by Bjarne Stroustrup, creator of C++. It’s an excellen
このページの他に、岡野原さんの "C++の便利ツール・ライブラリ" がオススメです。 標準ライブラリ STL その1。主に、リストやマップなどのコレクションに関する generic なデータ構造とアルゴリズム。 iostream その2。ストリーム入出力。 C.std その3。まだまだ現役。 boost 準標準。上の3つを超強力にした/するライブラリ達の集合体。 並列・ネットワーク・XML TBB (Thread Building Blocks) スレッドセーフなコンテナやスレッドをフル活用した並列アルゴリズムなど TinyXML 名前の通り軽量でまとまってるXMLパーザ。 MiX Minimalists XML parser。同じくXMLパーザ。 libcurlpp FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE, LDAP によるフ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く