<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Mar 16, 2018 at 6:25 PM, Jed Brown <span dir="ltr"><<a href="mailto:jed@jedbrown.org" target="_blank">jed@jedbrown.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">Matthew Knepley <<a href="mailto:knepley@gmail.com">knepley@gmail.com</a>> writes:<br>
<br>
> On Fri, Mar 16, 2018 at 2:20 PM, Jed Brown <<a href="mailto:jed@jedbrown.org">jed@jedbrown.org</a>> wrote:<br>
><br>
>> Matthew Knepley <<a href="mailto:knepley@gmail.com">knepley@gmail.com</a>> writes:<br>
>><br>
>> > On Fri, Mar 16, 2018 at 1:27 PM, Jed Brown <<a href="mailto:jed@jedbrown.org">jed@jedbrown.org</a>> wrote:<br>
>> ><br>
>> >> Matthew Knepley <<a href="mailto:knepley@gmail.com">knepley@gmail.com</a>> writes:<br>
>> >><br>
>> >> > On Fri, Mar 16, 2018 at 1:17 PM, Jed Brown <<a href="mailto:jed@jedbrown.org">jed@jedbrown.org</a>> wrote:<br>
>> >> ><br>
>> >> >> Matthew Knepley <<a href="mailto:knepley@gmail.com">knepley@gmail.com</a>> writes:<br>
>> >> >><br>
>> >> >> > I agree. We should remove all code (about 2/3 of it) which does a<br>
>> >> >> > hierarchy of communicating dicts (the original design). That would<br>
>> >> >> > make everything simple. No threads, no parents, etc. We leave in<br>
>> the<br>
>> >> >> > help the way we want it, types for args, etc. One thing its notably<br>
>> >> >> > missing, and that PETSc Options are missing, is listing the thing<br>
>> that<br>
>> >> >> > set the option (default, command line, code, env).<br>
>> >> >><br>
>> >> >> Does RDict even need to be persistent? Who all reads it? I wonder<br>
>> if<br>
>> >> >> an existing human-readable file would be sufficient instead?<br>
>> >> >><br>
>> >> ><br>
>> >> > I think we should persist the entire set of options used to configure<br>
>> for<br>
>> >> > later<br>
>> >> > interrogation, however we have not done that much so far.<br>
>> >><br>
>> >> CONFIGURE_OPTIONS is written to petscvariables and printed by make info.<br>
>> >> I think fewer duplications is desirable.<br>
>> >><br>
>> ><br>
>> > This gets into a separate discussion. I think Python info is more useful<br>
>> > since its<br>
>> > directly visible to scripts we might write.<br>
>><br>
>> Just call your Python parsing function.<br>
><br>
><br>
> Parse a makefile to get info? This is too convoluted for my first choice.<br>
><br>
><br>
>> But this gets back to my earlier question: who needs to read RDict.db and<br>
>> for what purpose?<br>
>><br>
><br>
> 1) We read this to get the configure modules during install and other post<br>
> configure operations.<br>
><br>
> 2) I would like us to read RDict.db to get the original configure<br>
> environment<br>
<br>
</div></div>The problem is that RDict.db is opaque</blockquote><div><br></div><div>This seems to be a normative characterization. I think the make variables are</div><div>"dead" because its hard to make use of them in scripting.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> and some people edit<br>
petscvariables and/or petscconf.h to work around weird issues.</blockquote><div><br></div><div>Awful. We should not encourage this. It should flow from the top.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> We can't<br>
practically get rid of petscvariables without abandoning make.<br></blockquote><div><br></div><div>The aim should not be to get rid of them, but rather to have them be read only.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
It's also frustrating to debug because the names used in Python may not<br>
match the names used in human-readable output,</blockquote><div><br></div><div>Changing this is trivial.</div><div><br></div><div> Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> and that also prevents<br>
grepping to find unused variables.<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="http://www.caam.rice.edu/~mk51/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div>
</div></div>