ドワンゴC++勉強会#1を開催した
去る6月28日に、歌舞伎座タワーのドワンゴのセミナールームで、ドワンゴC++勉強会 #1を開催した。
今回は、でちまるさん(実際かわいい) (decimalbloat)と、狂える中3女子ボレロ村上/陶芸C++er (bolero_MURAKAMI)を発表者として招いて、最強の勉強会を行った。
ボレロ村上は、コンパイル時メタプログラミングで、レイトレーシングや波形生成などを行っている。本職は岡山の陶芸家である。
この日の発表は、テンプレートの再帰深度を下げる話や、コンパイル時レイトレーシング、波形生成、またC++の標準ライブラリのうち、constexprに対応できるものがまだまだあるという話であった。
でちまるさんは、Cプリプロセッサーでメタプログラミングを行っている。本職は艦これプレイと艦これ関連のコンテンツ収集である。
この日の発表は、いかにして数値というものを解しないCプリプロセッサーで四則演算を行うかとか、再帰もないのに現実的な回数のループを実現するかという、Cプリプロセッサーメタプログラミングにおける基本的な考え方から発表した。結局は、すべてをマクロ名の結合と置換で強引に行ってしまえばいいのだ。
Cプリプロセサーメタプログラミングに使われている極めて強引な手法を、彼はかの有名なニンジャスレイヤーのレッドゴリラ=サンの名言、「何事も暴力で解決するのが一番だ」を引いて説明した。言語というものは、以下に制限を加えようとも、必ず乱用されるものである。
なお、でちまるさんは今回のCプリプロセッサーメタプログラミング発表のまとめとして、「PHPを使え」というありがたい結論を提示した。
今回は、C++界で異彩を放つ強力な二人の発表者を呼んだので、発表内容は極めて濃くなった。二人の発表内容は、いったい何の役に立つのかと思った人もいるかもしれぬ。しかし、これらの技法は、C++の新機能を設計する上で、非常に参考になっているのだ。
筆者は、C++の歴史と題して、C++が作られた経緯や、最近の日本のC++標準化委員会の事情を説明した。
さて、LT発表は5人。
最初の発表者、南山まさかず@東京 (minamiyama1994)君は、テンプレートと依存型(C++の規格用語の依存型ではない)として扱う方法について発表していた。残念ながら、筆者には理解できない世界の話であった。
次の発表者、抹茶ココア (fimbul11)さんは、C++14にライブラリとしても追加されたinteger sequenceの技法や、テンプレートの再帰深度を線形増加より押さえる技法について発表した。
ぽんこつ@MyFleetGirls開発中 (ponkotuy)さんは、いかにCocos2dxがC++的ではないかということについて発表した。発表を聞く限り、Cocos2dxはクソであるという認識を得た。
かるぱねるら (karupanerura)さんの発表は、なぜか記憶に残っていない。たしかCocos2dxについてクソであると言っていた気がするが、はて。
ψ(プサイ) (tikal)ちゃんは、かわいい狐のコスプレをしていた。なんでも、いなり、こんこん、恋いろは。に出てくる、コンというキャラクターであるようだ。コンちゃんはvalgrindという、実行時メモリチェッカーについて発表した。Cocos2dxは非常にクソであると言っていた。また、AMDやnVidiaの不自由なドライバーの中のクソコードがよくvalgrindのチェックに引っかかったりしてムカつくということも言っていた。
ドワンゴC++勉強会は、ドワンゴらしく、ニコ生による配信も行った。
ドワンゴC++勉強会 #1 - 2014/06/28 14:00開始 - ニコニコ生放送
問題は、当日使っていたケーブルに不備があったので、急遽ドワンゴ社員が買いに走るなどという障害に見舞われたそうだ。
今回、connpassにて参加者を募集したところ、90人枠が一日と立たずに埋まってしまった。どうやら、C++勉強会には相当の需要があるようだ。今回、参加できなかった人達のためにも、これからも頻繁に開催していきたい。
筆者がドワンゴに入社してから、セミナールームを使って勉強会を積極的に開いてほしいとは言われていたものの、他の社員への負担などを考えて、今まで勉強会を開くことはなかった。今回、勉強会を開いてみたところ、予想以上の応募数があったので、これからは積極的に勉強会を開催したい。
今回の勉強会は、だいぶ重い内容であったので、次の勉強会は、バランスを取るために軽くしたい。そもそも、勉強会は自分で発表してこそ勉強になるので、次回の勉強会は、一般の発表者を多く募集したいところだ。とにかくC++WG論文を早く読まねばならない。
ドワンゴ広告
この記事はドワンゴ勤務外に書かれた。この勉強会がドワンゴ勤務に当たるのかどうかまだ分からない。仕事であるとすれば、休日出勤となるので、振替休日がもらえるはずである。しかし、今は読むべきC++WG論文が大量にたまっているし、それにサボろうと思えばいくらでもサボれるので、どうでもいいことである。
ドワンゴは本物のC++プログラマーを募集しています。
CC BY-ND 4.0: Creative Commons — Attribution-NoDerivatives 4.0 International — CC BY-ND 4.0