<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>interpreter | Learn C Games Programming Blog</title>
	<atom:link href="https://learncgames.com/tag/interpreter/feed/" rel="self" type="application/rss+xml" />
	<link>https://learncgames.com</link>
	<description>A blog about C, programming games and my ebook(s).</description>
	<lastBuildDate>Mon, 15 Mar 2021 19:51:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1</generator>

<image>
	<url>https://learncgames.com/wp-content/uploads/2020/03/cropped-favicon-32x32.png</url>
	<title>interpreter | Learn C Games Programming Blog</title>
	<link>https://learncgames.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">181446779</site>	<item>
		<title>Cling &#8211; an interactive C++ interpreter</title>
		<link>https://learncgames.com/cling-an-interactive-c-interpreter/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=cling-an-interactive-c-interpreter</link>
		
		<dc:creator><![CDATA[David]]></dc:creator>
		<pubDate>Wed, 17 Mar 2021 00:00:57 +0000</pubDate>
				<category><![CDATA[C++]]></category>
		<category><![CDATA[Other stuff]]></category>
		<category><![CDATA[interpreter]]></category>
		<guid isPermaLink="false">https://learncgames.com/?p=2897</guid>

					<description><![CDATA[<p>When I first learned to program back in 1976, I had a teletype and a BASIC interpreter. Apart from a couple of years writing BASIC programs in my first job, all my work after that was with compilers. So I&#8217;m a bit rusty with interpreters. The idea is that the interpreter reads a line of [&#8230;]</p>
The post <a href="https://learncgames.com/cling-an-interactive-c-interpreter/">Cling – an interactive C++ interpreter</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></description>
										<content:encoded><![CDATA[<figure id="attachment_2900" aria-describedby="caption-attachment-2900" style="width: 300px" class="wp-caption alignleft"><img fetchpriority="high" decoding="async" class="size-medium wp-image-2900" src="https://learncgames.com/wp-content/uploads/2021/03/code-1689066_640-300x200.jpg" alt="Computer screen" width="300" height="200" srcset="https://learncgames.com/wp-content/uploads/2021/03/code-1689066_640-300x200.jpg 300w, https://learncgames.com/wp-content/uploads/2021/03/code-1689066_640.jpg 640w" sizes="(max-width: 300px) 100vw, 300px" /><figcaption id="caption-attachment-2900" class="wp-caption-text">Image by <a href="https://pixabay.com/users/markusspiske-670330/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1689066">Markus Spiske</a> from <a href="https://pixabay.com/?utm_source=link-attribution&amp;utm_medium=referral&amp;utm_campaign=image&amp;utm_content=1689066">Pixabay</a></figcaption></figure>
<p>When I first learned to program back in 1976, I had a teletype and a BASIC interpreter. Apart from a couple of years writing BASIC programs in my first job, all my work after that was with compilers.</p>
<p>So I&#8217;m a bit rusty with interpreters. The idea is that the interpreter reads a line of code and then executes it; parsing it and calling various routines to execute statements and parse then evaluate expressions. It&#8217;s kind if unusual to do this with C++. <a title="Link to cling at Cern" href="https://root.cern/cling/" target="_blank" rel="nofollow noopener">Cling</a> is built on the top of LLVM and Clang libraries.</p>
<p>This is different to sites like repl.it, <a title="Link to codepad.org" href="https://codepad.org/" target="_blank" rel="nofollow noopener">codepad.org</a> or <a title="Link to Ideone.com" href="https://ideone.com/" target="_blank" rel="nofollow noopener">ideone.com;</a> they compile the whole program and run it. With an interpreter, it runs line by line and you can print out variables at any time.  Interpreters are probably more like debuggers.</p>
<p>As well as C++, cling can execute C, Objective-C and that even less used language Objective-C++.  Developed at Cern it has a very extensive <a title="Link to cling tutorials" href="https://root.cern/doc/master/group__Tutorials.html" target="_blank" rel="nofollow noopener">set of tutorials</a>.<span hidden class="__iawmlf-post-loop-links" data-iawmlf-links="[{&quot;id&quot;:93,&quot;href&quot;:&quot;https:\/\/pixabay.com\/users\/markusspiske-670330\/?utm_source=link-attribution\u0026utm_medium=referral\u0026utm_campaign=image\u0026utm_content=1689066&quot;,&quot;archived_href&quot;:&quot;&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[],&quot;broken&quot;:false,&quot;last_checked&quot;:null,&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:94,&quot;href&quot;:&quot;https:\/\/pixabay.com\/?utm_source=link-attribution\u0026utm_medium=referral\u0026utm_campaign=image\u0026utm_content=1689066&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20260205102120\/https:\/\/pixabay.com\/?utm_source=link-attribution&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 11:50:20&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-15 12:03:43&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-02-27 11:09:00&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-03-14 22:59:27&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-03 19:13:13&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-08 10:51:40&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-12 18:42:27&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-18 05:17:31&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-21 17:51:40&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-27 17:43:02&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-04-30 21:07:40&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-05-04 23:03:56&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-05-10 06:45:38&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-05-14 06:49:20&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-05-20 16:55:56&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-05-25 03:43:14&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-07-16 11:23:28&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-07-22 18:15:13&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-07-26 01:32:30&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-07-29 06:12:03&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-08-11 06:04:04&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-08-16 04:16:06&quot;,&quot;http_code&quot;:403},{&quot;date&quot;:&quot;2026-08-19 11:00:48&quot;,&quot;http_code&quot;:403}],&quot;broken&quot;:true,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-19 11:00:48&quot;,&quot;http_code&quot;:403},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:95,&quot;href&quot;:&quot;https:\/\/root.cern\/cling&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20260119154045\/https:\/\/root.cern\/cling\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 11:50:23&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-15 12:03:44&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-27 11:09:05&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-14 22:59:29&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-03 19:13:20&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-08 10:51:38&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-12 18:42:36&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-17 09:33:41&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-21 03:50:04&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-24 04:32:42&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-27 17:43:07&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-30 21:07:47&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-05-04 23:04:04&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-05-10 06:45:41&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-05-14 04:26:29&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-20 04:42:41&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-23 13:34:50&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-14 22:09:50&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-07-21 05:41:21&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-07-24 13:04:03&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-07-29 09:59:19&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-08-11 06:04:08&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-08-16 04:16:11&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-08-19 11:00:52&quot;,&quot;http_code&quot;:404}],&quot;broken&quot;:true,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-19 11:00:52&quot;,&quot;http_code&quot;:404},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:96,&quot;href&quot;:&quot;https:\/\/codepad.org&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20240520225456\/http:\/\/codepad.org\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 11:50:29&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-02-15 12:03:52&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-02-18 18:50:18&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-02-22 17:03:56&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-02-27 11:09:03&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-03-04 14:43:36&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-03-08 03:50:33&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-03-11 04:08:00&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-02 07:52:54&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-05 11:06:00&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-11 16:32:33&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-14 22:22:00&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-18 09:19:35&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-21 17:51:38&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-27 17:43:05&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-30 21:07:42&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-05-04 23:03:59&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-05-09 02:11:25&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-05-14 06:49:22&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-05-20 16:55:57&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-05-25 03:43:18&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-07-14 15:10:16&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-07-21 00:28:08&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-07-26 10:49:31&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-08-11 06:04:06&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-08-14 13:11:29&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-08-18 13:14:38&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-08-21 20:18:37&quot;,&quot;http_code&quot;:503}],&quot;broken&quot;:true,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-21 20:18:37&quot;,&quot;http_code&quot;:503},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:97,&quot;href&quot;:&quot;https:\/\/ideone.com&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20260206115138\/https:\/\/ideone.com\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 21:53:36&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-15 12:03:48&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-18 18:50:24&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-22 17:03:59&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-27 11:09:01&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-04 12:21:15&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-08 03:50:34&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-11 04:08:00&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-02 07:52:53&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-05 11:05:59&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-13 18:20:50&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-17 15:02:07&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-20 19:39:42&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-24 04:32:36&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-27 17:43:04&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-30 21:07:41&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-04 23:03:57&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-10 06:45:39&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-14 06:49:21&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-20 16:55:50&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-25 03:43:13&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-07-14 15:10:15&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-07-21 00:28:09&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-07-26 10:49:27&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-08-11 06:04:05&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-08-16 04:16:07&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-08-19 11:00:49&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-08-22 11:16:02&quot;,&quot;http_code&quot;:200}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-22 11:16:02&quot;,&quot;http_code&quot;:200},&quot;process&quot;:&quot;done&quot;},{&quot;id&quot;:98,&quot;href&quot;:&quot;https:\/\/root.cern\/doc\/master\/group__Tutorials.html&quot;,&quot;archived_href&quot;:&quot;http:\/\/web-wp.archive.org\/web\/20260206115207\/https:\/\/root.cern\/doc\/master\/group__Tutorials.html&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2026-02-06 21:53:32&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-15 12:03:45&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-02-24 13:37:24&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-01 17:05:30&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-03-14 22:59:29&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-03 19:13:20&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-06 23:17:09&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-04-12 18:42:43&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-17 09:33:44&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-21 03:50:05&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-24 04:32:40&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-27 17:43:07&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-04-30 21:07:50&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-05-06 22:00:04&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-05-10 06:45:42&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-14 06:49:21&quot;,&quot;http_code&quot;:206},{&quot;date&quot;:&quot;2026-05-20 16:55:54&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-05-25 03:43:22&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-07-14 22:09:53&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-07-22 02:15:25&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-07-25 02:48:33&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-07-29 06:12:07&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-08-11 06:04:08&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-08-16 04:16:07&quot;,&quot;http_code&quot;:404},{&quot;date&quot;:&quot;2026-08-19 11:00:52&quot;,&quot;http_code&quot;:404}],&quot;broken&quot;:true,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-08-19 11:00:52&quot;,&quot;http_code&quot;:404},&quot;process&quot;:&quot;done&quot;}]"></span></p>The post <a href="https://learncgames.com/cling-an-interactive-c-interpreter/">Cling – an interactive C++ interpreter</a> first appeared on <a href="https://learncgames.com">Learn C Games Programming Blog</a>.]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2897</post-id>	</item>
	</channel>
</rss>
