タグ

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

  • マストドンが直面している問題はすでにP2P技術が15年前に遭遇した問題だ

    Media content caching strategy · Issue #1847 · tootsuite/mastodon勢がマストドンに目をつけ始め、Pixivがマストドンのインスタンスを立ち上げてからというもの、マストドンは2つの問題に直面している。 日国内で合法である現実に基づかない純粋な思想の表現である絵が海外基準では児童ポルノであり違法なデータである 画像投稿を主目的とするPixivの利用形態により大量のトラフィックとストレージがキャッシュとして消費されるため貧弱なインフラでは耐えられない これにより、Pixivによるマストドンのインスタンスは海外で主流のマストドンのインスタンスから遮断された。 現在、マストドンのコミュニティではこの問題に対する議論が行われているが、この問題には見覚えがある。15年前のP2P技術が流行した時代と同じ問題だ。我々は歴史に学ぶべきであ

    mrkn
    mrkn 2017/04/17
    インフラはお金を稼がないと維持できない。
  • お気持ち表

    国民、某、言さく。国民聞く、かけまくもかしこき天皇、皇位の維持につき、お気持ちを御公開遊ばされると云々。これ日国の一大事にして、一都一道二府四十三県の貴きと賤しきとを問わず、日国民の耳目を集むるところなり。 そもそも、天皇は日国の象徴なり。その地位は、主権の存する日国民の総意に基くと日国憲法、かく言へり。天皇は国事行為のみを遊ばされ、国政に関与すること能はざるなり。これをもつてこれをみるに、天皇の皇位の進退、御意に如くに遊ばさるること能はず。就中、真の天皇の御意、公にせられること久しくなし。世にすでに発せられたる詔は、国民の総意なり。御意に非ざるなり。天皇、国政への関与を禁ぜられたるため、僅かにも国政に影響を及ぼす御意は、公にせられざるなり。 昭和天皇、千九百四十六年の一月一日に詔を発して曰く、天皇は現人神に非ずと。これをもって世は天皇は人間なりと宣言したとみなせり。畏くも天皇た

    mrkn
    mrkn 2016/08/08
    面白いけど、読むの辛い。
  • Bjarne Stroustrupのプログラミング入門書の査読の感想

    C++の設計者ストラウストラップによるプログラミング入門書の最新版日語訳が、9月に @asciidwango から出版されます。 https://t.co/ssT9ubfXtT — アスキードワンゴ編集部 (@asciidwango) August 5, 2016 アスキードワンゴ編集部からBjarne StroustrupのProgramming -- Principles and Practice Using C++というの第二版の邦訳が出版される。初版は翔泳社が出していたが、C++14に対応した改訂版の第二版の版権が空いていたので、アスキードワンゴから出すための作業をしていた。私は邦訳の査読をした。 今年になってから半年は、ずっとこのの査読をしていた。このためにC++標準化委員会の最新の文書を把握する作業が数ヶ月ほど滞った。そして、この仕事は、私がドワンゴに入社して以来、最悪の

    Bjarne Stroustrupのプログラミング入門書の査読の感想
    mrkn
    mrkn 2016/08/06
    おもしろかった
  • x86のmov命令はチューリング完全

    世の中には様々なチューリング完全なシステムがある。 の虫: うっかりチューリング完全になっちゃったもの x86のMMUはチューリング完全である。 BGP(Border Gateway Protocol)はチューリング完全である。 http://vanbever.eu/pdfs/vanbever_turing_icnp_2013.pdf さて、x86の命令セットは極めて複雑で冗長であることが知られている。なんと、mov命令はチューリング完全であるそうだ。 http://www.cl.cam.ac.uk/~sd601/papers/mov.pdf もちろん、mov命令でメモリ上に任意のコードを書いて実行させればチューリング完全になるが、論文ではそのようなコード生成や自己書き換えによるイカサマは行っていない。また、アドレスモードもたいていのRISCにあるようなものしか使っていないという。 x8

  • constexprで非定数式の状態を保持

    Non-constant constant-expressions in C++ なんと、C++のconstexpr関数を呼び出すたびに戻り値を変える方法があるという。つまり、以下のstatic_assertが引っかかるコードだ。 int main () { constexpr int a = f (); constexpr int b = f (); static_assert (a != b, "fail"); } なんと、constexpr関数は状態を保持できる計算能力を備えているというのだ。 fはconstexpr関数である。 読んでみたところ、要するにこうだ。 noexcept演算子はオペランドが定数式かどうかを判別するのに使える。 // exprが定数式であればtrue constexpr bool b = noexcept( expr ) ; 未定義の関数は定数式ではない。

    mrkn
    mrkn 2015/05/05
    Black magic
  • gitの10周年を記念したLinus Torvalsへのインタビューの翻訳

    10 Years of Git: An Interview with Git Creator Linus Torvalds | Linux.com gitの10週年を記念して、リーナス・トーバルズがインタビューに答えている。以下はその翻訳である。 なぜGitを作ったのか? トーバルズ:俺はソース管理ツールなんて作りたくなかったし、コンピューターの業界において最も興味がないものだと見なしていた(データベースは別だが)。それにソース管理ツールなんてどれも嫌いだった。しかし、BitKeeperがやってきてからというもの、ソース管理に対する見方が変わったね。BitKeeperは大抵のことを正しく行っていた。レポジトリのローカルコピーがあることと、分散マージはでかかった。分散ソース管理の何がいいかというと、ソース管理ツールの問題を吹っ飛ばせることだ。「誰が変更を行えるか」といった政治問題があるが、B

    mrkn
    mrkn 2015/04/09
  • Linus Torvalds、 GCC 4.9.0のコード生成にブチ切れる

    Phoronixで知ったが、Linus TorvaldsがGCC 4.9.0のコード生成にブチ切れている。 問題はLinuxカーネルのload_balance()がランダムにパニックを起こすというもので、その原因は、報告者の使っているコンパイラーであるGCC 4.9.0のコード生成がおかしかったという話だ。 Linus様は御自ら生成されたコードを読み給い、平生と変わらぬ調子で物事の道理を示された。 Linux-Kernel Archive: Re: Random panic in load_balance() with 3.16-rc From: Linus Torvalds Date: Thu Jul 24 2014 - 14:47:25 EST On Wed, Jul 23, 2014 at 6:43 PM, Michel DÃnzer <michel@xxxxxxxxxxx> wro

    mrkn
    mrkn 2014/07/28
    ウケた
  • GCC 4.9リリース

    GCC, the GNU Compiler Collection - GNU Project - Free Software Foundation (FSF) GCC 4.9がリリースされた。少なくとも、公式Webサイトのトップページからは、リリースされたことになっている。ただし、なぜかリンクをたどると GCC 4.9 Release Series — Changes, New Features, and Fixes - GNU Project - Free Software Foundation (FSF) GCC 4.9がリリースされた。興味深い変更点を上げると。 大昔の、もはや保守もテストもされていないようなプラットフォームのサポートがobsolete扱いになった。もし、活発な活動が行われない場合、次のリリースでは取り除かれるそうだ。特に、Solaris 9が挙げられている。 Cla

    mrkn
    mrkn 2014/04/13
    C++ すごいな
  • Apple流の新機能の隠し方:(BOOL)isYoMamaWearsCombatBootsSupported;

    How Apple hides new functionality in iOS: isYoMamaWearsCombatBootsActive | Hacker News Hacker Newsで、Apple流の新機能を隠す方法の話題で持ちきりだ。開発者が使う、公開しなければならないヘッダーファイルの宣言にある関数名から機能が推測されてしまう問題の対処方法として、まずヘンテコな名前をつけておき、後で実際の関数に置換するという斬新な方法が発覚した。 iOS 7 GM · 6ccf9c4 · JaviSoto/iOS7-Runtime-Headers · GitHub これまでのところ見つかっている名前は、以下の通り。 (BOOL)isYoMamaWearsCombatBootsSupported; (BOOL)isYoMamaWearsCombatBootsActive; (void)se

    mrkn
    mrkn 2013/09/13
  • LinuxカーネルのMLにおける悪口の励行についての議論勃発

    Linuxカーネルのメーリングリストは、常に罵詈雑言に満ち溢れているが、そういうのは辞めて大人になろうという主張がSarah Sharp[1]によってなされた。なかなか面白い。 きっかけは、いたって日常的な罵倒混じりの議論に、Sarah Sharpが横槍を入れたところから始まった。 LKML: Sarah Sharp: Re: [ 00/19] 3.10.1-stable review On Fri, 12 Jul 2013 18:17:08 +0200, Ingo Molnar <mingo@kernel.org> wrote: * Linus Torvalds <torvalds@linux-foundation.org> wrote: On Fri, Jul 12, 2013 at 8:47 AM, Steven Rostedt <rostedt@goodmis.org> wrote

    mrkn
    mrkn 2013/07/17
    斧が見える
  • 食べる自由

    トーキョーシティで働く一般社員の春部ダンは腹をすかせていた。時刻はちょうど正午、今から一時間は雇用の免除時間であるので、どこか適当なタベモノ店で事をとりたいところだ。ダンは労働部署を出て、タベモノ店地区に向かった。冬の寒さが身にしみる。こういう時は、暖かいカレーうどんでもべたいものだ。カレーうどんは一般社員のタベモノとしてふわさしい。 ダンは会社から発行された事許可カードがポケットに入っていることを確認しつつ、ぶらりとタベモノ店地区へ向かった。この事許可カードがなければ、事にはありつけないのだ。カードには非接触ICが搭載されており、ダンが事の権利を持つ者であるという身分証明もかねているのだ。 ダンには、というより、ほとんどの一般社員には、行きつけのタベモノ店などというものはない。一般社員が利用できるタベモノ店は数社の企業による寡占フランチャイズで、どの店でべてもちゃんと綿密に

  • ClangがC++11を完全実装! 繰り返す、C++11を完全実装

    [Phoronix] LLVM's Clang Compiler Is Now C++11 Feature Complete C++11 support is now feature-complete. · e6e68b5 · llvm-mirror/clang · GitHub 3時間前のコミットにより、Clangは晴れてC++11規格を完全に実装した。その通り、完全にすべて実装した。 コミットは、Inheriting Constructorsとthread_localの機能を有効にする変更だ。 もちろん、まだ実装にバグは残っているだろうし、規格上のバグもあるので、開発に終わりはない。ただし、今日は記念すべき日である。 static_puts said... そうすると、ますますC++11の重要性が高まってきますね! 「寄付のお願い」の方にも書かせていただいたのですが、書籍の執筆への寄

  • GCC 4.8でぶっ壊れるSPECのお粗末なコード

    の虫: GCC 4.8のリリースノートとC++関連の変更で、GCC 4.8は464.h264ref: SPEC CPU2006 Benchmarkを壊してしまう。これはSPECベンチマークの規格違反によるものであると書いた。では、具体的に何なのか。それを解説している記事を発見したのでかいつまんで紹介。 Embedded in Academia : GCC pre-4.8 Breaks Broken SPEC 2006 Benchmarks Regehr: GCC 4.8 Breaks Broken SPEC 2006 Benchmarks [LWN.net] どうやら、SPECベンチマークは以下のようなコードを含むそうだ。 int d[16]; int SATD (void) { int satd = 0, dd, k; for (dd=d[k=0]; k<16; dd=d[++k])

  • Linuxのstableカーネルにext4をぶっ壊すバグが発見される

    [Phoronix] EXT4 Data Corruption Bug Hits Stable Linux Kernels このバグは、3.6.2でもたらされ、以前の安定版カーネルにもback-portされているので、3.4の最新の安定版カーネルにまで影響が及ぶらしい。 Theodore Ts'oによれば、この問題は、カーネルを短期間で二度正常にリブートすることで起こるのだそうだ。そのため、一般の普通のディストロを使っている利用者は、まずこのバグに出くわすことはない。しかし、サスペンドやハイバネートのかわりにリブートを使うラップトップ利用者や、カーネル開発者には、容易に問題が起こりうるのだとか。 なんだかだいぶ反響があるので追記。Theodore Ts'oのメールより LKML: Theodore Ts'o: Re: Apparent serious progressive ext4 da

    mrkn
    mrkn 2012/10/24
  • C++11におけるモダンなhas_xxxの実装

    久しぶりにメタプログラミングをしようと思う。特に、has_xxxをC++11で書くことに挑戦してみる。has_xxxとは、ある型がネストされた名前を持っているかどうかを確認するメタ関数である。名前は、型、もしくは非型のどちらかになる。 まず、型の方から。 namespace detail { template < typename T, typename U = typename T::type > std::true_type check_type( int ) ; template < typename T > std::false_type check_type( long ) ; } template < typename T > struct has_type : decltype( detail::check_type<T>( 0 ) ) { } ; なんと、たったのこれだけの

    mrkn
    mrkn 2012/02/25
    ざんねんながら C++ が普通の言語に近づいてしまった
  • 本の虫: Dark_Shikari、WebPについて語る

    Diary Of An x264 Developer » H.264 and VP8 for still image coding: WebP? H.264のエンコーダー、x264の開発者の一人である、Dark_Shikari氏が、WebPについて語っている。基的に、WebP規格自体は悪くないのだが、公式のエンコーダーであるlibvpxがクソすぎる。 Dark_Shikari人曰く、まだ追記するかもしれないとのこと。今は完全に一致しているが、念のためリンク先の翻訳元(英語)を参照することをおすすめする。 JPEGはかなり昔の圧縮フォーマットで、あまりよろしくない。実際のところ、MPEG-2時代の動画フォーマットですら、JPEGには勝てる。なぜ皆が移行しないのかというのは、単純だ。特に利点がないからだ。たとえJPEGより2倍すぐれていたとしても、全世界に対して、20年間使い慣れた画像フォ

  • autoの意外な使い方

    江添亮 自由ソフトウェア主義者 C++ Evangelist C++標準化委員会の委員 ドワンゴ社員 C++11を執筆した。 株式会社ドワンゴで働いている。 Mail:boostcpp@gmail.com Twitter:@EzoeRyou GitHub: https://github.com/EzoeRyou 江添亮のマストドン@EzoeRyou 筆者にブログのネタを提供するために、品物をアマゾンお気に入りリスト経由で送りたい場合: Amazon.co.jp: 江添亮: 江添のほしい物リスト 筆者にブログのネタを提供するために、直接に品物を送りたい場合、住所をメールで質問してください。 View my complete profile ► 2020 (31) ► December (2) ► November (2) ► September (2) ► August (4) ► Jul

    mrkn
    mrkn 2010/03/09
  • 我々はプログラミング雑誌を創刊す

    かつては、実に多くのプログラミング雑誌があったものだ。思い返せば懐かしい。雑誌に載っていたバイナリコードを、必死に打ち込んだ日を覚えているだろうか? カセットテープの音で、どのマイコンのデータかをあてる遊びをしたことはあるだろうか。かつては、NHKでさえ、記録テープを放送して、各家庭で録音させることで、マイコン向けのデータをブロードキャストしていたのである。 思えば、時代は変わった。我々のコンピューター技術は進化し、実に便利になった。誰か能く、リアルタイム3Dレンダリングを予想しただろうか。誰か能く、HD動画の、リアルタイムデコードを予想しただろうか。はた、今日のWebの興隆は如何。 コンピューターは進化し、便利になった。しかし、コンピューターをプログラムするのは、依然として、我ら人間である。プログラマである。プログラマが技術を習得すべきソースとなるのものは何ぞや。「ネットで誰かが書いてく

    mrkn
    mrkn 2010/03/01
    超買う!超買う!
  • 本の虫: QuirksBlog: HTML5のドラッグ&ドロップはクソだ

    QuirksBlog: The HTML5 drag and drop disaster QuirksBlogで有名なPeter-Paul Kochさんが、HTML5のドラッグ&ドロップに関して、酷くののしっている。かなり好い文章で、興味深かったので翻訳してみた。記事が長いので、blockquoteを使うのは御免を被る。 一日半もテストして、HTML5 drag and drop moduleはクソなばかりか、ゲロみてえな臭いがプンプンするってことが、いやというほど分かったね。 コイツはHTML5規格から、ソッコーで消すべきだし、もっとまともな規格が制定されるまでは、現行ブラウザは、この機能を、一刻も早く無効にするべきだ。 Web開発者は、HTML5のドラッグ&ドロップを使うな。絶対使うな。RFC2119で規定されているMUST NOTの意味で使うな。使いたきゃ、従来通りのスクリプトで実装

  • 1