-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
2015/09/28 プレもくもく会 #2
Comments
各自の作業内容
|
やること: いくつかのソルバーについて、C++からの使い方を調べて実際に利用してみる。
|
やること:Clang のAST解析ツールに入門する |
今日やったことー
|
やることBoost.Hanaのドキュメント読み続けたり、コンパイル試してみたり Boost.HanaのURLとかGithubhttps://github.com/ldionne/hana Sites作業リストgcc5.2でのコンパイルテスト
とりあえず警告出る。GCC5.2は一部バグが有るらしく完全サポートはしてない。 Tutorialのサンプルコードの場所http://ldionne.com/hana/ のtutorialにあるコードはコンパイルできるソースファイルが
ディレクトリにある。 BOOST_HANA_CONSTANT_CHECKBoost.Hanaでは
というAssertionを使うことになる。
boost::hana::Constant<decltype(tmpvar)>::valueと:boost::hana::valueまでは追えなかったが、だいたい挙動はつかめる。 |
やりたいこと試していたのはminisatというソフトです。 http://minisat.se/MiniSat.html 「制約充足問題」と呼ばれる問題を解くためのプログラムで、例えば
のように論理式が与えられたとき、TRUEにするようなA, B, Cの組み合わせは存在するか?を答えてくれる(あればそれを返す)というものです。 一般には組み合わせが爆発して計算時間が爆発しますが、それをなるべく効率的に解いてくれるというものです。 いくつかのパズルはこの形に直して解けます。例:数独 できたことインストールに手間取ったので、インストールができたというところです。 C++で利用する方法を調べていたのですが、あまりよい解説がないので(サンプルはあるけど https://github.com/niklasso/minisat-examples 解説があるわけでないのでわかりにくい)、もう少し調べてみようというところです。 |
本日の成果MSVCに無事対応 原因xtgmath.hのジェネリックすぎる関数fma 解決 template< class T1, class T2, class T3 >
inline constexpr auto fma(T1&& v1, T2&& v2, T3&& v3)
{/*...*/} としていたところを template< class T1, class T2, class T3 >
inline constexpr auto fma(interval<T1> const& v1, T2&& v2, T3&& v3)
{/*...*/} などとし、特殊化された関数のオーバーロードを羅列することで 参考サイト |
作業成果 公式ページの入門資料http://clang.llvm.org/docs/IntroductionToTheClangAST.html 以下、入門動画を見ながら内容を抜粋 ASTContext ( 2:25頃 )
** Identifier Table 識別子テーブル
Core Classes ( 3:19頃 )Clang AST で登場する主要なクラス
ほとんど進まず。残り40分ほど。 |
No description provided.
The text was updated successfully, but these errors were encountered: