 In addition to partial functions, positive free logics can also readily handle non-strict functions. A non-strict function is a function that may yield a value even if not all of its arguments are defined. The binary function \(f\) such that \(f(x,y) = x\), for instance, can yield a value even if the \(y\)-term is empty. So, for example, the formula \(f(1, 1/0) = 1\) can be regarded as true. Logics for non-strict functions must be positive because in a negative or neutral logic empty-termed atomic formulas, such as \(f(1, 1/0) = 1\), cannot be true. Free logics involving non-strict functions find application in some programming languages (Gumb 2001, Gumb and Lambert 1991). Such logics may employ a dual-domain semantics in which the referents of empty functional expressions such as ‘1/0’ are regarded as error objects—objects that correspond in the running of a program to error messages. Thus, for example, an instruction to calculate \(f(1, 1/0)\) might return the value 1, but an instruction to calculate \(f(1/0, 1)\) would return an error message.