Conclusion of the cfperl internals discussion
The cfperl project, a cfengine interpreter written in Perl, is developed from the top down. In this article, we'll discuss the groups and classes, and how unknown input is handled.
This is chapter 9 of an ongoing series; you can read all about the background, rationale, and structure of cfperl, the topic of this chapter, in the previous chapters. This chapter will conclude our discussion of the general cfperl structure that began in "Chapter 7. Top-level control flow and configuration". In this chapter, we will examine the groups section parser and the default parser.
The groups section is an essential part of cfengine and cfperl. By defining a class that contains groups of machines, you can offer the user a powerful and flexible class mechanism.
The default parser is necessary as a catch-all handler. When cfperl does not have a specialized handler for a section, it is passed to the default parser.