Cling – The New Interactive Interpreter for ROOT 6

Cling – The New Interactive Interpreter for ROOT 6
复制标题

Cling – ROOT 6 的全新交互式解释器

DOI:
10.1088/1742-6596/396/5/052071
复制
发表时间:
2012
期刊:
Journal of Physics: Conference Series
影响因子:
--
通讯作者:
P. Russo
P. Russo
中科院分区:
--
文献类型:
--
作者:
V. Vasilev;P. Canal;A. Naumann;P. Russo

文献摘要

被引文献

相似文献

CLING是一个交互式C++解释器,构建在Clang和LLVM编译器基础设施之上。与其前身Cint一样,CLING实现了读取-打印-评估循环的概念,以便利用快速的应用程序开发。该解释器作为LLVM和Clang的一个小扩展实现,重用了它们的优势,例如备受赞誉的简明和富有表现力的编译器诊断。我们展示了如何将解释器的概念与编译器库相匹配,并概括了构建交互式解释器的常见要求集。我们将设计和实现决策归因于将解释器行为实现为编译器库扩展这一挑战的解决方案。我们将介绍新的特性,例如C++11将如何适应CLING,以及CINT特定的扩展将如何被采用。我们阐明了根框架中的集成状态和诱导更改集。我们解释了由于新的解释器,根词典是如何简化的。
Cling is an interactive C++ interpreter, built on top of Clang and LLVM compiler infrastructure. Like its predecessor Cint, Cling realizes the read-print-evaluate-loop concept, in order to leverage rapid application development. Implemented as a small extension to LLVM and Clang, the interpreter reuses their strengths such as the praised concise and expressive compiler diagnostics. We show how to match the interpreter concept to the compiler library and generalize common set of requirements for building up an interactive interpreter. We reason the design and implementation decisions as solution to the challenge of implementing interpreter behaviour as an extension of the compiler library. We present the new features, e.g. how C++11 will come to Cling and how Cint-specific extensions are being adopted. We clarify the state of integration in the ROOT framework and the induced change set. We explain how ROOT dictionaries are simplified due to the new interpreter.