シント

CINTは、元々はオブジェクト指向データ分析パッケージROOTに含まれていたコマンドラインC / C++インタープリタです。[ 1 ] ROOTの他の機能と併用することを想定していますが、CINTは、そのようなインタープリタを必要とする他のプログラムにスタンドアロンで追加することもできます。2013年にCERNはCling C++インタープリタに切り替えたため、CINTは現在、作者によってスタンドアロンで配布されています。[ 2 ] [ 3 ]

CINTはC/C++のインタープリタ版であり、BeanShellがJavaのインタープリタ版であるのと似ています。言語インタープリタであることに加えて、履歴やタブ補完といったBash風のシェル機能も提供しています。タブ補完を実現するために、CINTはROOTに組み込まれたリフレクションサポートに大きく依存しています。これらのインターフェースに従うユーザークラスもこれらの機能を利用できます。

CINTが当初解釈した言語は、実際にはCとC++のハイブリッドのようなもので、ANSI Cの約95%とC++の約85%をカバーしていました。[ 4 ]しかし、構文はどちらの言語よりも少し寛容です。例えば、演算子は、オプションの警告のみ->で に置き換えることができます.。また、コマンドライン上の文はセミコロンで終わる必要はありませんが、マクロ内の文ではセミコロンが必要です。

CINTの代替として、ROOTはC++ JITコンパイル環境としてLLVMClangを使用するREPLアプリケーションであるClingも提供しています。 [ 5 ]この取り組みはclang-replにアップストリームされています。

参照

参考文献

  1. ^ 「CINT | ROOT データ分析フレームワーク」 . root.cern.ch. 2020年5月4日時点のオリジナルよりアーカイブ2024年6月27日閲覧。
  2. ^ "CINT : C++ インタプリタ" . www.hanno.jp . 2024年6月27日閲覧
  3. ^ 「CINT the C++ Interpreter」 . root.cern.ch. 2024年6月27日閲覧
  4. ^ 「ROOT: オブジェクト指向データ分析フレームワーク | Linux Journal」www.linuxjournal.com . 2024年6月27日閲覧
  5. ^ "C++ インタプリタ Cling" .ルネ・ブランとフォンス・ラデメイカーズ2020 年12 月 25 日に取得