Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>First: This is a really big debate issue, not a quick Q+A.</p> <p>My favourite right now is to simply include <a href="http://www.lua.org" rel="noreferrer">Lua</a>, because</p> <ul> <li>I can permit things like width=height*(1+1/3)</li> <li>I can make custom functions available</li> <li>I can forbid anything else. (impossible in, for instance, Python (including pickles.))</li> <li>I'll probably want a scripting language somewhere else in the project anyway.</li> </ul> <p>Another option, if there's a lot of data is to use <a href="http://www.sqlite.org/" rel="noreferrer">sqlite3</a>, because they're right to claim</p> <ul> <li>Small.</li> <li>Fast.</li> <li>Reliable.</li> </ul> <p><em>Choose any three.</em></p> <p>To which I would like to add:</p> <ul> <li>backups are a snap. (just copy the db file.)</li> <li>easier to switch to another db, ODBC, whatever. (than it is from fugly-file)</li> </ul> <p>But again, this is a bigger issue. A "big" answer to this probably involves some kind of feature matrix or list of situations like:</p> <h2>Amount of data, or short runtime</h2> <ul> <li>For large amounts of data, you might want efficient storage, like a db.</li> <li>For short runs (often), you might want something that you don't need to do a lot of parsing for, consider something that can be mmap:ed in directly.</li> </ul> <h2>What does the configuration relate to?</h2> <ul> <li>Host: <ul> <li>I like YAML in /etc. Is that reimplemented in windows?</li> </ul></li> <li>User: <ul> <li>Do you permit users to edit config with text editor?</li> <li>Should it be centrally manageable? Registry / gconf / remote db?</li> <li>May the user have several different <em>profiles</em>?</li> </ul></li> <li>Project: <ul> <li>File(s) in project directory? (Version control usually follows this model...)</li> </ul></li> </ul> <h2>Complexity</h2> <ul> <li>Are there only a few flat values? Consider YAML.</li> <li>Is the data nested, or dependent in some way? (This is where it gets interesting.)</li> <li>Might it be a desirable feature to permit some form of scripting?</li> <li>Templates can be viewed as a kind of configuration files..</li> </ul>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload