No side effects, no surprises.

Notes BLUEPHRASE Comment remark placeholder Reply syntax notes [html · notes] Comments and placeholders within the manuscript to allow authors and editors to make internal notes.

No side effects

The V language evaluates the state of system resources and verifies that the state is within specified bounds. Both the evaluation step and the verification step, can be thought of as read-only operations, and as such should not effect the state of the system. V language statements can thus be safely executed without disrupting the normal operation of the system.

In the Linux implementation of the language, this guarantee is made without regard to any special user access rights. Any user may safely execute V language statements without side effects, because all parts of the core interpreter have been developed with this rule specifically in mind.

The fine print

This stricture against side-effects is fully adhered to by the core language interpreter, and plugin developers are admonished to follow this rule too. Nevertheless, plugin modules are interpreted and executed at runtime in such a way that complete enforcement of this rule is not possible. For this reason, users who obtain third-party plugins, should be prudent in their evaluation of plugins from untrustworthy sources, who may circumvent this rule, either accidentally or intentionally.

This guarantee, that the language have no side effects, can be enforced by executing V with restrictive usage rights. For example, on systems that have Security Enhanced Linux, auditing rules could be established where a user could have super-user access to read all resources, but no access to write to any resource.