On 3/8/2010 10:31 AM, Daniel V Klein wrote: > Les- > > I think you may have missed my core point. The issue is not library versus > you, or anything like that. A declarative language says "what will be", and > does not change what already satisfies that. Additionally, getting to the > stage of "what you want" may take a few cycles. > > Just looking at the mode, if you just set the mode, you change the mtime on > the file. If the mode is what you want, don't touch it. Mode is a *SIMPLE* > example, but looking deeper, you don't say "if this is there, do that, but if > that is there, do this". You just state what your desired end-state is.
Off topic, but setting modes changes ctime, not mtime. > It is a fine point, but an essential one - and perhaps I am not explaining it > as well as I could... You are correct, cfening does not change the way that > computers work. It changes the way that *you* work with them. I understand that, but my point was that library routines are where this is done in other languages if in fact that is way you want things to be done. That is, someone writes reusable general routines to accomplish tasks or maintain state, and if that involves 'test first' or even scheduling periodic tests, that's where it should be done. Then the code you write for any particular purpose consists of passing a list of parameters off to the routines that know what to do with them. If you aren't already working that way in other languages it isn't because the languages can't accommodate it. -- Les Mikesell lesmikes...@gmail.com _______________________________________________ Help-cfengine mailing list Help-cfengine@cfengine.org https://cfengine.org/mailman/listinfo/help-cfengine