5.1 New Option Types

From a software engineering point of view, it is better to implement new option types in a file of their own, preferably named after the option type itself, and to put this file in the Clon package, like this:

(in-package :net.didierverna.clon)

Creating your own option type involves 5 steps: providing a class for them, implementing three protocols related to argument/value tweaking, and providing a constructor function. We now review those 5 steps in order.