<div dir="ltr"><div><div><div><div><div><div><div><div>Hi,<br><br></div>I've been following the changes in LLD's software architecture.<br></div>Recently a new file was added: Alias.h<br></div>In this file, the curret Atom set is extended with an AliasAtom.<br>
</div>While the change seems innocent enough, it has some nasty<br>potential. Simple.h and Alias.h are placed in the ReaderWriter<br>component. This is the 2nd component in the layering:<br></div>Driver<br>ReaderWriter<br>
</div>Passes<br>Core<br><br></div>The problem is that Core depends on these files. So in my opinion,<br>they belong to that Component. The greater impact here is that<br>once core starts depending on ReaderWriter, architecture Erosion<br>
will happen. This would obviously not be a good thing, since the<br>current design is fresh and clean.<br><br></div><div>I would love to supply patches, but am having issues getting<br>lld to build under Ubuntu 12.04. (but that's another story ;) ).<br>
<br></div><div>I've posted the updated architecture view here:<br><a href="http://www.c2lang.org/docs/lld_architecture_20140602.png">http://www.c2lang.org/docs/lld_architecture_20140602.png</a><br><br></div></div>