にゃははー

はへらー

Boost

Boost.Fusion, Boost.Phoenixのメンテナになりました

今朝見慣れないメールがいくつか飛んできていて、その中でJoel de Guzman(FusionとかPhoenixとかSpiritとかのAuthor)が、「君をメインメンテナとしてコミット権追加しといたから、ヨロシク」ってなてました。 Boostの開発はgithubに移行してからpull-reque…

Boost.Fusion 1.58 updates

Boost.Fusion 1.58は頑張ったし、Damien Buhlも頑張ったのでそれなりな更新がいくつかあります。 まだBeta出てない*1けどそろそろmasterがcloseしてbugfixのみになるので機能としてはfixした感じ。 主な新機能 GitHub PR #12 Fusionのシーケンスをboost::has…

CrystaX NDKとBoost

私はAndroidの開発をするわけではないが、Googleが出すAndroid NDKとは異なったNDKがあるらしい。CrystaX .NETサイト名に.NETがついているがMicrosoftとは無縁の様。で、そこの開発チームが最近Boostへ積極的に関わってきている。 いくつかのライブラリは動…

便利かもしれないGCC builtin

これは恐らくC++ Advent Calendar 2014の15日目です。古来[要出典]より人々はいかに例外を投げた奴をトレースするかに命をかけてきた[要出典]。投げられた例外自体や、そのメッセージを確認することはできるが、一体誰がその例外を投げたかという情報は一切…

Boost.勉強会 #16で発表してきた

Boost.勉強会 #16 大阪 - boostjp便利!電動歯ブラシ | Boost.勉強会 #16 大阪 この発表したあとにBoostの開発のこと聞かれたり色々したので、やっぱりキチガイキワモノ達の発表もいいけど、こういう簡単なセッションもあったほうがいいんだろうなぁと思った。数回…

range-based forとstd名前空間

Boost.Coroutineに関してBoost users MLでrange-based forに関する面白い話が流れたので紹介したい。 この話は私も初めて聞いて驚いた。C++11で新規追加されたrange-based forはconceptが削除されたタイミングでその挙動をどうするかで議論していた。なつか…

Boost.Range でも regular が使いたい! - C++ AdC 2013

partake.in の12日目です。もう一個のカレンダーの方で激おことかforkforkとか言ってたら、なんかみんな頑張ってるしカレンダー名に(fork)とか付いてしまってて申し訳ないなーとか思ってたり少しはしているのですが、特にカレンダー書く予定はないです。ネタ…

C++ Advent Clandar 2013 1日目 (forkした方)

※注: これはforkした方の。C++ (fork) Advent Calendar 2013 - Adventar今年もAdvent Calendarの季節です。 しかも驚くべきことにC++ Advent Calendarはforkしました。あと先に断っておきますが、25日やらないです。 立ちあげた本人が表にもこちらにも書こう…

Boost.Coroutine with 1.55.0 Beta 1 RC

もうBoost 1.55.0の時季となったわけで、リリースノートの翻訳作業も進めている。 Boost 1.55.0のリリースノート翻訳を更新 - Faith and Brave - C++で遊ぼう今回はBoost.PredefというBoost.Configみたいな感じのものが来る。 どうせ誰かが解説するし、変更…

std::bindとboost::bindとboost::asio::placeholders

c++ - Should std::bind be compatible with boost::asio? - Stack Overflow std::bindにboost::asio::placeholder::errorを渡すと死ぬ(そりゃそうだ) - 2冊の本を3等分Boost.Asioのasyncハンドラには多くの場合、Boost.Bindとboost::asio::placeholdersを…

UPDATE_NOWの引数

自分向けの覚書 rule UPDATE_NOW ( target * : out-fd ? : force ? : continue ? ) target virtual-targetに対してactualizeしたabstract-target out-fd このupdateでのstdout/stderrの出力を吐き出すfile descriptor fdはFILE_OPENで引っ張ってくる force !…

C++ AdventCalendar 2012 9日目 「Boost.AsioでGraceful Restart」

C++ Advent Calendar 2012 - PARTAKE の9日目です。今回は Boost.Asio で Graceful Restart してみたいと思います。 ※Unix依存コードなのでWindows環境はわからないです。あしからず。まぁWinで鯖とか... Graceful Restart とは Graceful(ぐれーすふる, 優雅…

1.52からboost::result_ofがコンパイルエラーになるかもしれない

1.51以前のboost::result_ofを使用しているコードでC++11モードをenableにしている場合、1.52に更新するとコンパイラによってはコンパイルエラーになるかもしれない。 というのもboost::result_ofはBoost 1.52から挙動が変わり、従来TR1式のresult_ofであっ…

複数のobjを束ねる

例えばあるprojectがあって、 project / : source-location ./src ; exe x : [ glob *.cpp ] ;とあるぐらいなら別に問題にならないけど、 project / : source-location ./src ; obj module/a : module/a.cpp ; obj module/b : module/b.cpp ; alias module :…

Spirit.QiのList Parserで嵌ったこと

http://www.boost.org/doc/libs/1_51_0/libs/spirit/doc/html/spirit/qi/reference/operator/list.htmlSpirit.Qiには a % b というList Parserがあるが、これを使ってて嵌った。ドキュメントには The list operator, a % b, is a binary operator that match…

Boost.Contextのnamespace

また変わりました...Boost.Contextの怒涛の変更 - にゃははー でboost::contextsからboost::ctxに変わったことは記憶に新しいですが、boost::ctxというnamespaceは命名規則に則ってないのではという議論が巻き起こりました。 Boost mailing page: [boost] [c…

Boost.Build v2の誰てめ

ところで君はだれだい? numbers.log10 名前の通り常用対数を取るruleです。 import numbers ; ECHO [ numbers.log10 1 ] ; # => 0 ECHO [ numbers.log10 100 ] ; # => 2注意なのが、bjamは全て文字列で処理するのでパラメータと戻り値は全て正数です。悲し…

Boost 1.50.0で追加されたライブラリ達

皆さんご存知の通りBoost 1.50.0がリリースされました。 このリリースで皆さん当然user-config.jamに BOOST_THREAD_VERSION=3 を追加したことと思います。まぁ今回は変更ではなくて新しく追加されたライブラリについて。 Boost.Algorithmさんには若干失望し…

Boost.Phoenix V3でのmove

例えば common.hpp を次のように書いたとする。 #include <boost/move/move.hpp> struct S { BOOST_MOVABLE_BUT_NOT_COPYABLE(S) public: S() {} S(BOOST_RV_REF(S)) {} }; void f(S) {} で、このSをfにmoveしてみる。 #include "common.hpp" #include <boost/move/move.hpp> int main() { S s; f(boost</boost/move/move.hpp></boost/move/move.hpp>…

Boost.Contextのこととか話した

Boost.勉強会 #9 つくば - boostjp Boost9 session 並行と並列とスレッド 前半はなんか概念的なことばっかり話したと思う。しかも後半でほとんど関係なくなったし。 とりあえずユーザースレッドってものを導入したかったのだと思う。多分。カーネルスレッド…

Boost.勉強会 #9 つくばを主催した

Boost.勉強会 #9 つくば - boostjp 主催っていうのは存外難しい まず、会場の確保。これは何度も言っているけど新城靖准教授にしていただいたことで実現できた。 実際確保だけはできるけど教室機材は使ってはいけないとか言われる。教員が借りると問題ないら…

Boost.Contextの怒涛の変更

Boost.Contextがtrunkに入ってだいぶ経ちましたが、ここのところ非常に大きな変更が入っています。 ※今後も更に変更されるかもしれないので、リリース時にはこのエントリも役に立たないかもしれないです。 これまでの流れ 内部実装とかユーザから直接関係な…

Steven Watanabeの神コミット in Boost.Context

Boost.Contextがtrunk入り - にゃははーでBoost.Contextのビルドオプションが面倒だと言ったが、我らがSteven Watanabeがやってくれた。svnではrev.77196,ftp.tsukubaのgitでは6d06ffddf135088328525bb677c0c0e0687c917dだ。このコミットが何を意味するか端…

Boost.Contextがtrunk入り

タイトルの通りBoost.Contextがsvn trunkに入りました.多分1.50.0でのリリースになるのではないでしょうか. 先日githubから突如としてリポジトリが消え去っていましたが,ようやくtrunkに入るまでになったようで何よりです.svnはrev.76974で,ftp.tsukubaが出…

【解決】Intel Atom環境でBoost.ContextがSEGVる

普段VAIO Z(Intel Atom Z550 + Ubuntu 10.10)で開発してるわけなんだけど、Boost.MMMを作るにあたってBoost.ContextがAtom環境でSEGVってくれる。 具体的にはboost_fcontext_startでboost::contexts::detail::trampolineに行く時にtrampolineの第1引数の値が…

tools/boostbook/setup_boostbook.(sh|py)が加えるuser-config.jamへの変更

$HOMEにuser-config.jamを置いている場合、user-config.jamが変更されるため単なるビルドでもエラーになってしまう場合があります。もちろんuser-config.jamを$HOMEに置いたりbjam Advent Calendar jp 2011を読むぐらいの皆さんですからこんな事書かなくても…

Many-to-Many thread Modelのライブラリを書いてみてる

Boost.Context github現在Boost.Contextのmini reviewが実施されてます。これはコルーチンやファイバーを実装するベースとなるコンテキストスイッチを提供します。Boost.CoroutineやBoost.Fiberが頓挫してる中レビューまでこじつけたライブラリです。既存のB…

libstdc++.7のversioned namespaceに起因する問題

GCC4.6.3/4.7.0のlibstdc++から修正されたversioned namespaceを有効にするとboost/detail/container_fwd.hppのforward declとぶつかって曖昧性が生じるためコンパイルエラーになる部分が発生しています。 Interprocessでも同様の問題があったようですが、こ…

Boost Advent Calendar 2011 4日目 - Boost.Foreachの裏側

Boost Advent Calndar 2011 の4日目です。ネタがないので既知のことかもしれないですが、いろいろテクニックが使われてるBoost.Foreachの実装について紐解いてみたいと思います。 Boost.Foreachとは C++11でrange-based forという構文が追加されたのはみなさ…

[解決]Boost.Phoenix V2

今のご時世なにV2のこと話すんだって感じですが、今は1.41ベースで書いてるので仕方ないです。で、Boost.Spirit.Qi始めてみたんですが、semantic actionのところで int n; qi::int_[ phoenix::ref( n ) = qi::_1 ] ってやると hoge.cpp:7:76: error: no matc…