parserFunction.pl - An easy way of adding new functions to the current context.

From WeBWorK

Jump to: navigation


NAME

parserFunction.pl - An easy way of adding new functions to the current context.

DESCRIPTION

This file implements an easy way of creating new functions that are added to the current Parser context. (This avoids having to do the complicated procedure outlined in the docs/parser/extensions samples.)

To create a function that can be used in Formula() calls (and by students in their answers), use the parserFunction() routine, as in the following examples:

        parserFunction(f => "sqrt(x+1)-2");
        $x = Formula('x');
        parserFunction(f => sqrt($x+1)-2);
        parserFunction("f(x)" => "sqrt(x+1)-2");
        parserFunction("f(x,y)" => "sqrt(x*y)");

The first parameter to parserFunction is the name of the function or the name with its argument list. In the first case, the names of the variables are taken from the formula for the function, and are listed in alphabetical order.

The second argument is the formula used to compute the value of the function. It can be either a string or a Parser Formula object.

($Function)->D

 #
 #  Compute the derivative of (single-variable) functions
 #    using the chain rule.
 #

NameForNumber($number)

# # Get the name for a number #