<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://mw.hh.se/wg211/index.php?action=history&amp;feed=atom&amp;title=WG211%2FM23VanWyk</id>
	<title>WG211/M23VanWyk - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://mw.hh.se/wg211/index.php?action=history&amp;feed=atom&amp;title=WG211%2FM23VanWyk"/>
	<link rel="alternate" type="text/html" href="http://mw.hh.se/wg211/index.php?title=WG211/M23VanWyk&amp;action=history"/>
	<updated>2026-04-05T20:58:37Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>http://mw.hh.se/wg211/index.php?title=WG211/M23VanWyk&amp;diff=2583&amp;oldid=prev</id>
		<title>Eric at 21:27, 23 March 2024</title>
		<link rel="alternate" type="text/html" href="http://mw.hh.se/wg211/index.php?title=WG211/M23VanWyk&amp;diff=2583&amp;oldid=prev"/>
		<updated>2024-03-23T21:27:14Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 23:27, 23 March 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Abstract coming soon &lt;/del&gt;...&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;There is a longstanding interest in our community in language extension and mechanisms for easily adding (domain-specific) features to programming languages&lt;/ins&gt;. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;One notion of extensibility argues that language extensions should be independently developed such that a programmer can pick the ones needed for their task at hand and compose them with a host language&lt;/ins&gt;. &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Previously we have developed some ways to ensure that the composition of language and extension specifications leads to deterministic parsers and well-defined attribute grammars to implement the language.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Recently, Dawn Michaelson, Gopalan Nadathur, and I have been working to establish a modular approach to reasoning about metatheoretic properties for extensible languages. One aim is to ensure that properties established by a host language continue to hold when language extensions are added to the mix. For example, how can a type preservation property introduced by the host language be guaranteed to hold when new extensions that engage in type checking of their new constructs are added? Another aim is to also allow language extensions to introduce new properties that still hold when other extensions, unaware of the property, are added in. An extension that allows variables to be marked as secret or public may wish to establish a property that secret data never leaks to public variables; how is this property established in the presence of other extensions? This talk will discuss some initial techniques and tools we have developed to address these challenges&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Eric</name></author>
	</entry>
	<entry>
		<id>http://mw.hh.se/wg211/index.php?title=WG211/M23VanWyk&amp;diff=2566&amp;oldid=prev</id>
		<title>Eric: Created page with &quot;Abstract coming soon ...&quot;</title>
		<link rel="alternate" type="text/html" href="http://mw.hh.se/wg211/index.php?title=WG211/M23VanWyk&amp;diff=2566&amp;oldid=prev"/>
		<updated>2024-03-19T18:56:13Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Abstract coming soon ...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Abstract coming soon ...&lt;/div&gt;</summary>
		<author><name>Eric</name></author>
	</entry>
</feed>