At Sunday, 27 November 2016 9:33 am. Mike Weilgart wrote:
> I want to take a moment to talk about CFEngine adoption *far, far forward*
> into the future.
> ...
> What is *your* response, as a CFEngine developer, to the ideas laid out
> above?  Shall we work toward a more precise language specification for
> CFEngine 4.x?

I just couldn't agree more.

For a start, I can presume that current CFEngine3.x promise file syntax may be 
more than enough to cover all usages and underlying theory. Let me provoke 
that there is no need to introduce any new syntactic elements.

But, as you said, problem is that many of the existing promise types 
(implementations, that is) have arbitrary quirks in the way they are evaluated 
and executed. I had resorted several times into reading the source code to 
understand why some promises had been behaving so.

So, indeed, there must be a core, clear and universal approach to all 
promises, their dependencies etc.

I would dare to add, also, that extending promise types within the monolithic 
binary may not work long-term, making CFEngine's code hard to maintain and 
adapt to all usage scenarios (think the needs of embedded devices vs. data-
center clusters). Given the above formal language specification, parts of 
CFEngine could be split out to /modules/, as in dynamically-linked libraries.

That said, I'm also (IMHO, always) against this trend of abstracting the 
promise declaration at some JSON configuration file. Using a different 
technology for each layer of abstraction makes the system less comprehensible, 
the learning curve steeper. Instead, let's investigate why the CFEngine 
language/syntax can't (or can it? ) be used, itself, to abstract promises/
bundles into higher levels..





-- 
You received this message because you are subscribed to the Google Groups 
"dev-cfengine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dev-cfengine/1956931.y4SqOl9s3Y%40xorhgos3.pefnos.
For more options, visit https://groups.google.com/d/optout.

Reply via email to