<p>Development through a C++ interpreter (Cling) as opposed to a standard compiler is an amazing leap in productivity and a window into the newest features of C++. This post tells you how to get your own bleeding-edge C++ interpreter built right on top of the development version of LLVM. We give you a repeatable procedure via Amazon EC2.</p>

<p>With our prescribed steps in place, you can always have an up-to-date development version of Cling. This allows quick testing and investigation of LLVM's newest features. You will also possess a development environment as a path to contributing to Cling or learning how Cling's innards push C++ code along.</p>

<h3>Background</h3>

<p>Astoundingly, there <strong>is</strong> such a thing as a C++ interpreter! Thus, if you're interested in sticking to C++ for speed and efficiency, you're not confined to the code-compile-run-debug workflow. Living outside such a workflow lends jumps in productivity and a unique angle through which to see C++.</p>

<p>Development of a serious C++ interpreter &#91;was undertaken by the wizards at CERN][1] starting at around 1995. (You might recognize this group as searchers &#91;for the Higgs Boson&#93;&#91;2&#93;). The C++ interpreter was dubbed &#91;CINT&#93;&#91;3&#93; and was designed to support a major data analysis and visualization package known as [ROOT][4&#93; (screenshot below). The system is certainly serious as it is giving researchers a way to investigate the very fabric of the universe!</p>

<p>!&#91;A ROOT screenshot being driven by a C++ interpreter (CINT). CINT is not a toy implementation - rather it is used to investigate the fabric of the universe.&#93;&#91;5&#93;</p>

<p>Over the last 20 years, CINT fell behind the evolving C++ language. In response, individuals at CERN began work on a replacement for CINT dubbed Cling with the strategy of leveraging LLVM to stay up to date with the growing C++ specification. Up until recently, the project has been rather nascent, but now it is at the point where its functionality and build system make Cling worthwhile for use and contribution.</p>

<h3>Build instructions for x86</h3>

<p>We present a build procedure that leverages Amazon EC2. By using the cloud, you are guaranteed to use the exact Linux version and hardware capabilities that we did in testing. We assume that you have an Amazon EC2 account. The expected compute resource cost will be around two dollars.</p>

<ol>
<li><p>Create an <strong>m3.xlarge</strong> instance with the &#91;Debian Jessie AMI (ami-aae18fc2)&#93;&#91;6&#93;. Be sure to grab at least <strong>32Gb</strong> of storage.</p></li>
<li><p>Boot the instance and login as <strong>admin</strong>.</p></li>
<li><p>Install required build packages on the instance</p></li>
</ol>

<p><code>sudo apt-get update sudo apt-get install build-essential git</code></p>
