On Wed, Oct 3, 2012 at 10:33 AM, Karl Rupp <span dir="ltr"><<a href="mailto:rupp@mcs.anl.gov" target="_blank">rupp@mcs.anl.gov</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Onward to a CPP free PETSc :-)<br>
</blockquote>
<br></div>
Just to double-check: Are you referring to the C preprocessor or C++? I know that your are not a close friend with both...</blockquote></div><br><div>CPP = C preprocessor.</div><div><br></div><div>There is no mandatory C++ in PETSc core, though external package interfaces (e.g. Elemental) may require it.</div>
<div><br></div><div>I personally would not object to very localized use of templates in the implementation, most notably in the BAIJ kernels. The only alternative to deal with the rampant code duplication is fairly hairy use of the preprocessor. This code works, however, and streamlining it hasn't been a high priority.</div>