22. A non-transitory computer readable medium storing instructions structured to cause a computing device to: create a first function and a second function by writing software code; create a domain specific rule that includes the first function, the second function, a logical connection between the first function and the second function, and a variable value; create a natural language policy in response to a user selection of the domain specific rule and an option for the variable value, wherein the option limits the variable value, and wherein the natural language policy is the domain specific rule with the variable value set to the option; compile and execute the natural language policy.
22. A non-transitory computer readable medium storing instructions structured to cause a computing device to: create a first function and a second function by writing software code; create a domain specific rule that includes the first function, the second function, a logical connection between the first function and the second function, and a variable value; create a natural language policy in response to a user selection of the domain specific rule and an option for the variable value, wherein the option limits the variable value, and wherein the natural language policy is the domain specific rule with the variable value set to the option; compile and execute the natural language policy. 28. The non-transitory computer readable medium of claim 22 , wherein the option limits the variable value to one of a predetermined set of variables names.