HOME

TheInfoList



OR:

CINT is a
command line A command-line interpreter or command-line processor uses a command-line interface (CLI) to receive commands from a user in the form of lines of text. This provides a means of setting parameters for the environment, invoking executables and pro ...
C/
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
interpreter that was originally included in the
object oriented Object-oriented programming (OOP) is a programming paradigm based on the concept of " objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of p ...
data analysis package
ROOT In vascular plants, the roots are the organs of a plant that are modified to provide anchorage for the plant and take in water and nutrients into the plant body, which allows plants to grow taller and faster. They are most often below the su ...
. Although intended for use with the other faculties of ROOT, CINT can also be used as a standalone addition to another program that requires such an interpreter. In 2013, CERN switched to the Cling C++ interpreter, so CINT is now distributed standalone by the author. CINT is an interpreted version of C/C++, much in the way BeanShell is an interpreted version of
Java Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mos ...
. In addition to being a language interpreter, it offers certain Bash-like
shell Shell may refer to: Architecture and design * Shell (structure), a thin structure ** Concrete shell, a thin shell of concrete, usually with no interior columns or exterior buttresses ** Thin-shell structure Science Biology * Seashell, a hard o ...
features such as history and tab-completion. To accomplish the latter, it relies heavily on the
reflection Reflection or reflexion may refer to: Science and technology * Reflection (physics), a common wave phenomenon ** Specular reflection, reflection from a smooth surface *** Mirror image, a reflection in a mirror or in water ** Signal reflection, in ...
support built into ROOT. User classes that follow these interfaces may also take advantage of these features. The language originally interpreted by CINT was actually something of a hybrid between C and C++, covering about 95% of ANSI C and 85% of C++. The syntax, however, is a bit more forgiving than either language. For example, the operator -> can be replaced by . with only an optional warning. In addition, statements on the command line do not need to end with a semi-colon, although this is necessary for statements in macros. As an alternative to CINT,
ROOT In vascular plants, the roots are the organs of a plant that are modified to provide anchorage for the plant and take in water and nutrients into the plant body, which allows plants to grow taller and faster. They are most often below the su ...
also provides Cling which is an REPL application using
LLVM LLVM is a set of compiler and toolchain technologies that can be used to develop a front end for any programming language and a back end for any instruction set architecture. LLVM is designed around a language-independent intermediate repre ...
's
Clang Clang is a compiler front end for the C, C++, Objective-C, and Objective-C++ programming languages, as well as the OpenMP, OpenCL, RenderScript, CUDA, and HIP frameworks. It acts as a drop-in replacement for the GNU Compiler Collection ...
as a C++ JIT compilation environment.{{cite web , url=http://root.cern.ch/drupal/content/cling , title=C++ interpreter Cling , publisher=Rene Brun and Fons Rademakers , accessdate=December 25, 2020


See also

* C/C++ Interpreter Ch


References

C programming language family Interpreters (computing)