去る2014年9月20日に、Boost勉強会#16大阪に参加して、発表してきた。
Boost.勉強会 #16 大阪 - Boost.勉強会 大阪 | Doorkeeper
東京から大阪へは新幹線で3時間未満のため、当日の早朝に家を出て現地に向かうこともできたのだが、遅くとも午前6時には、いや余裕を得るためには午前5時には家をでなければならないことを考えると、前日に京都まで行ってしまうことにした。
京都には実家もあるし、適当な宿を取ってもいいのだが、やはり吉田寮に泊まることにした。京都はやけに寒かった。東京は、まだ暑いぐらいであるが、京都はもう寒いものなのだろうか。それとも、たまたまこの数日が寒いのであろうか。
20日は、吉田寮生の岡田君と一緒に、大阪まで出かけた。
我々は梅田駅を避けて、中津駅で降りた。地図上で確認すると、中津駅の方が会場に近いと判断したためであるが、かの悪名高い迷宮、梅田駅を避ける目的もあった。
さて、我々は中津駅より南下し、会場の住所である大阪市北区芝田2-9-20近辺に到達した。しかし、会場が見つからない。建物や電柱に記載されている住所によれば、芝田2-9-30は、我々のいるたかだか数十メートルの一区画であるはずだが、一向にベルスクールという建物は見当たらない。さんざん周辺を歩きまわった結果、学園ビルという名称の建物の中に、ベルスクールは存在した。
さて、せっかくの勉強会であったが、当日の筆者は、発表があったので、資料の確認と修正に余念がなく、他人の発表には注意が向かわなかった。今回の筆者の発表は、軽量コンセプトだ。当日使用したスライド資料はGitHubに上げてある。
EzoeRyou/boost-benkyokai-oosaka-16
軽量コンセプトのドラフトTSは、今まで真面目に読んでいなかった。今回、資料作成のために初めてまともに読んだが、従来のテンプレートメタプログラミングの薄いシンタックスシュガーという感想を受けた。これが採用されるよりは、C++0xに提案されていた当時のコンセプトが入って欲しい。
当時のコンセプトより優れている点として、任意の式にsubstitutionが試みられるとか、任意の式が定数式や無例外式であるかどうかや、式を評価した結果の型という点で制約を記述できる部分だ。実に泥臭い低級な記述だが、当時のコンセプトよりはよほど高機能で現実的で、求められている機能ではあると思う。
今回のスライド資料は、簡単で具体的な使用例と、詳細の説明という二部構成にしたが、詳細な説明は、ブログ記事に書くのはいいが、聴衆の前で短時間で話すには不向きであったかもしれない。
いい機会なので、このスライドは加筆し、もっと具体的な使用例を増やして、次の機会に発表したいものだ。
というわけで、年内に、もう一度東京でC++の勉強会を開くべきかもしれない。
さて、勉強会は終了した。せっかくの連休なのだから、京都にとどまって、月曜日のC++ Templatesの邦訳の読書会に参加するという選択肢もあったが、そもそもあの本は10年前ならともかく今読んでも古すぎるし、あいにくと筆者はくしゃみと鼻水に悩まされていたため、早々に帰宅した。しかし、帰りの新幹線の中で、体調は完全に治った。どうも体調を崩したのではなくて、何らかの一時的な原因があったのではないか。もしかしたら、吉田寮でホコリとダニとノミにやられたのかもしれぬ。あるいは、やや肌寒い中、プレハブ小屋で何も布団をかけずに寝ていたためかもしれぬ。
さて、そういうわけで、今日明日は東京で暇をしている。どこかに遊びに行こうかとも思っているが、私には外に遊びに行くという動機がない。あえて考えれば、神保町に古本を漁りに行くぐらいだろうか。
ドワンゴ広告
この記事はドワンゴ勤務外に書かれた。
ドワンゴは本物のC++プログラマーを募集しています。
CC BY-ND 4.0: Creative Commons — Attribution-NoDerivatives 4.0 International — CC BY-ND 4.0
No comments:
Post a Comment
You can use some HTML elements, such as <b>, <i>, <a>, also, some characters need to be entity referenced such as <, > and & Your comment may need to be confirmed by blog author. Your comment will be published under GFDL 1.3 or later license with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.