Reflections on metaclass programming in SOM

Scott Danforth, Ira R. Forman
<span title="">1994</span> <i title="ACM Press"> <a target="_blank" rel="noopener" href="https://fatcat.wiki/container/6y3m32grtnfktkp2oo6oqjbvta" style="color: black;">Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications - OOPSLA &#39;94</a> </i> &nbsp;
This paper reports on the evolution of metaclass programming in SOM (the IBM System Object Model). Initially, SOM's use of explicit men&asses introduced metaclass incompatibilities. This was cured by having SOM dynamically derive an appropriate metaclass by interpreting the "metaclass declaration" as a constraint. In effect, inheritance is given a new dimension, because the constraint is also inherited. The derived metaclass is the least solution to all these constraints. Subsequently, this
more &raquo; ... led to the possibility of metaclasses conflicting over the need to assign meaning to a method. The cure for this problem is a framework that facilitates the programming of metaclasses that cooperate on the assignment of meaning to methods.
<span class="external-identifiers"> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/191080.191149">doi:10.1145/191080.191149</a> <a target="_blank" rel="external noopener" href="https://dblp.org/rec/conf/oopsla/DanforthF94.html">dblp:conf/oopsla/DanforthF94</a> <a target="_blank" rel="external noopener" href="https://fatcat.wiki/release/2gr3jbktznfrfhxrjffvo7bf4e">fatcat:2gr3jbktznfrfhxrjffvo7bf4e</a> </span>
<a target="_blank" rel="noopener" href="https://web.archive.org/web/20190217170938/https://static.aminer.org/pdf/20170130/pdfs/oopsla/rdwtbvijg35sdh9xeoyrik4yfp08tvll.pdf" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="https://blobs.fatcat.wiki/thumbnail/pdf/59/ae/59ae0cd07eaca957de77219370dfd026483e76ed.180px.jpg" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener noreferrer" href="https://doi.org/10.1145/191080.191149"> <button class="ui left aligned compact blue labeled icon button serp-button"> <i class="external alternate icon"></i> acm.org </button> </a>