C++
ChaiScript

夏休み到来! ChaiScript で新しい C++ スクリプティング体験を極めよう!

More than 1 year has passed since last update.

夏休み到来! :sunflower:

漢なら C++ で自由研究ですね! :watermelon:

C++ をゴリゴリ書いてもいいけど, 毎回コンパイルが大変... JSON-RPC で受け取ったメッセージのデータチェックとか, ユニットテスト用のスカッフォードコードとか, そーゆーのはスクリプトで処理とかしたいですね.

そこで, 夏休みの到来とともに, 新しいやり方にチャレンジしてみよう! 今年のおすすめは ChaiScript だよ. :tea:

http://chaiscript.com/

Intel の作っているレイトレーシングベースの可視化フレームワーク OSPRay でつかわれていたりするよ.

https://github.com/ospray/ospray
https://github.com/ospray/ospray/tree/master/apps/common/script

ChaiScript の特徴

  • ECMAScript っぽい文法
  • ヘッダオンリーで使える!
  • C++ との親和性高い!
    • C++14 対応コンパイラ必要!(ちょっと前までは C++11 で済んだのでかなしい... :sob:)
    • 例外サポートや, STL 型対応とか.
    • マルチスレッド対応
  • JSON ユーティリティあり! (to_json, from_json) :muscle:

残念ながらドキュメントはチートシート https://github.com/ChaiScript/ChaiScript/blob/develop/cheatsheet.md 以外は貧弱なんで, 詳細知りたかったらソースコード眺めてね!

できないこと

  • math 関数とかは組み込み型としては無い. 基本的に自分でバインドを書くことで対応

まとめ

  • Reference が単に Doxygen ドキュメントで内容がほとんど無いに等しくて悲しい. :sob:
  • 優秀な C++ 若人が, ChaiScript を極めることにより優秀な C++ スクリプティング若人へと人類史上最速で昇華し, 夏の自由研究を滞りなく 8 月 31 日に完成することができるような人材へと育成するスキームを確立する旅に出たい. :rocket: