タグ

ブックマーク / cpplover.blogspot.com (5)

  • 11月14日のドワンゴの勉強会でC++14の新機能を紹介する

    歌舞伎座.tech#2 - connpass 来る2013年11月14日に、ニコニコ動画のドワンゴが勉強会を開く。その勉強会でなにかC++11/14について話してほしいと頼まれたので、私も発表者として参加する。 何でも、開催日の11月14日にちなんで、C++11かC++14について話してほしいと言ってきた。思うに、エピはんも発表するそうだし、C++11については、いまさら私が言うまでもないだろう。すでにC++11の参考書も公開したのだから、いくらでも学べる。 私に発表を頼む以上、当然、最新のC++のコア言語を求めているに決まっている。そこで、11月14日の勉強会では、私は来年に正式に制定される予定のC++14に採用された新機能について話す。具体的には、以下の内容を話す。 二進数リテラル N3472 数値区切り N3499, N3781 実行時サイズ配列 N3639, N3662, N382

  • うっかりチューリング完全になっちゃったもの

    Accidentally Turing-Complete ― Andreas Zwinkau 来なら、チューリング完全となるべきではなかったものがある。これは、そのようなうっかりチューリング完全になってしまったものの例である。 C++テンプレート 当初はチューリング完全を目指していなかったが、C++テンプレートはチューリング完全になってしまった。その証明は、この論文にある(PDF) x86 MMU x86のpage fault handlingは、単純なマシンの実装に使える。原理としては、page faultが1 wordをスタックに積み、それによりアンダーフローを起こして別のトラップを生成する。この仕組みは、「減算して0以下ならば分岐」処理を実現する。チューリングマシンを実装するには十分である。デモ動画、講演動画 マジック・ザ・ギャザリング マジック・ザ・ギャザリングはカードゲームであ

  • 全プログラマーが知るべきレイテンシー数

    Latency numbers every programmer should know — Gist L1キャッシュ参照 0.5ナノ秒 分岐予測失敗 5ナノ秒 L2キャッシュ参照 7ナノ秒 Mutexのロックとアンロック 25ナノ秒 メインメモリー参照 100ナノ秒 Zippy[Snappy]による1KBの圧縮 3,000ナノ秒 1Gbpsネットワーク越しに2KBを送信 20,000ナノ秒 メモリーから連続した1MBの領域の読み出し 250,000ナノ秒 同一データセンター内におけるラウンドトリップ 500,000ナノ秒 ディスクシーク 10,000,000ナノ秒 ディスクから連続した1MBの領域の読み出し 20,000,000ナノ秒 パケットを、カリフォルニア→オランダ→カリフォルニアと送る 150,000,000ナノ秒 Jeff Dean著(http://research.googl

  • 60%の人間はプログラミングの素質がない

    Coding Horror: Please Don't Learn to Code Please Understand Learning to Code Coding Horrorで有名なJeff Atwordが、ある州知事が今年の目標としてプログラミングを習得することを挙げていることに対し、そもそも税金を払う我々市民は、政治家にはプログラミング習得以上に重要な、政治家にしかできない問題の解決を望む、よってプログラミングを学ぶのをやめてくれという記事を書いた。これに対して、反論が多数上がっているが、Jeffも読んでいるある論文をあげて、この議論の参加するためには、必ずこの論文を知っておくべきであると書いた人がいる。この論文は有名で、非常に興味深いので、全プログラマーが読むべきである。 ふたこぶラクダという名前で知られている有名な論文がある。この論文では、60%の人間にプログラミングの素質が

  • どのプログラミング言語を学ぶべきか

    新手该学哪门编程语言 | 酷壳 - CoolShell.cn via :Which programming language should I learn first? | Pixelstech.net 最近、フォーラムでこんな質問を目にした。質問とは、「どのプログラミング言語を学ぶべきか」というものであった。ある人の答え。 それは目的によるな。 表現力が高いパワフルな言語でプログラミングしたい場合: Python 手っ取り早くWebサイトを立ち上げたい場合: PHP 「ロックスター」を自称するプログラマーと触れ合いたい場合: Ruby 当にプログラミングを学びたい場合: C 悟りを得たい場合: Scheme 抑圧感を得たい場合: SQL 遺伝的に淘汰されたい場合: Microsoft Visual Basic ひどく平凡でつまらないが安定して給与が支払われるファイナンシャル・アプリケー

  • 1