[system] / trunk / pg / lib / Parser / Function Repository:
ViewVC logotype

Log of /trunk/pg/lib/Parser/Function

View Directory Listing Directory Listing

Sticky Revision:

Revision 5695 - Directory Listing
Modified Sat Jun 14 11:56:02 2008 UTC (11 years, 8 months ago) by dpvc
Fix typo in comments

Revision 5130 - Directory Listing
Modified Mon Jul 9 12:45:06 2007 UTC (12 years, 7 months ago) by dpvc
Added new flags to error checking of operands and function arguments.
This is so that a context can be developed that is more forgiving
about what can be put next to what.  Such a context can NOT be used
for evaluation or answer checking, but can be used to generate TeX
output in more sophisticated situations.

Revision 5105 - Directory Listing
Modified Sun Jul 1 11:18:39 2007 UTC (12 years, 7 months ago) by dpvc
Do a better version of promote (get the context right) for these
function calls.

Revision 5082 - Directory Listing
Modified Fri Jun 29 19:08:04 2007 UTC (12 years, 7 months ago) by dpvc
Only promote complex numbers of they aren't already complex (this
prevents changing the context, since Parser::Function->call is called
directly, so $self->context is the current context, not the context of
the argument being passed).

Revision 5001 - Directory Listing
Modified Tue Jun 12 04:05:56 2007 UTC (12 years, 8 months ago) by dpvc
More fixes for creating items in the corret context.  Also added a
method for looking up the package associated with a particular Parser
class (for consistency with the Value->Package call).

Revision 4996 - Directory Listing
Modified Sun Jun 10 11:34:27 2007 UTC (12 years, 8 months ago) by dpvc
Allow promote() to accept a context as the first argument so that the
promoted object can be forced into the given context.

Revision 4994 - Directory Listing
Modified Sun Jun 10 01:17:29 2007 UTC (12 years, 8 months ago) by dpvc
Update to handle the fact that the Value package now includes the
context with all MathObjects.  (This may still need some work.)

Revision 4975 - Directory Listing
Modified Wed Jun 6 21:44:05 2007 UTC (12 years, 8 months ago) by dpvc
This begins some major updates to the Parser and Value libraries.
This may make the MathObjects unstable as things shake down, but I'll
try to keep that to a minimum.

This update reorganizes how the overloading of operations are
implemented.  The base Value class is now overloaded rather than the
individual Value classes.  This makes it easier to make subclasses
that take advantage of the overloading.

The code that handles promoting one MathObject to another has been
updated as a part of this.  This should also make subclassing the
existing MathObjects more flexible.

In the past, Formula objects included a pointer to the Context in
which the object was created, but other MathObject did not.  This
update is the first round of updates to include the context in the
other MathObjects, but more work needs to be done.

The changes here should not affect existing problems; it is possible
that some macro files will need to be updated, but none of the
standard ones in pg/macros seem to need it at the moment.

Revision 3568 - Directory Listing
Modified Thu Aug 25 03:32:16 2005 UTC (14 years, 5 months ago) by dpvc
Fixed log and log10 perl methods so that log obeys the useBaseTenLog
flag, and log10 doesn't try to call main::log10, which is not
available from within this preloaded package.  The in- and outside
the safe compartment stuff is very confusing, and functions that are
not overloaded native perl functions seem to be not callable from the
Value::Formula package, so the perl method now calls
Parser::Function->call() directly (doesn't look pretty, but I've given
up on that).

Revision 3384 - Directory Listing
Modified Sat Jul 16 19:24:31 2005 UTC (14 years, 7 months ago) by jj
Fixed typo related to useBaseTenLog.

Revision 3370 - Directory Listing
Modified Tue Jul 12 22:29:53 2005 UTC (14 years, 7 months ago) by dpvc
A first pass at making parser error messages localizable.  The
Context()->{error}{msg} hash can be used to specify translations of
the standard messages.  For example,

    Context()->{error}{msg}{'Division by zero'} = "Don't divide by zero, dude!";
    Context()->{error}{msg}{'Function '%s' has too many inputs'} =
        "You passed too many arguments to '%s'";

(I didn't translate into another language, here, but you could do
that, too.)

The msg hash could also be used within answer checkers to make certain
answer messages more appropriate for the given type of expected answer.

Revision 2914 - Directory Listing
Modified Wed Oct 13 02:41:33 2004 UTC (15 years, 4 months ago) by dpvc
Added support for useBaseTenLogs to make log() work like ln() or
log10() depending on the value in the course.conf file.

Also fixed a bug that caused the WeBWorK parameters not to be
copied into contexts by initCopy().

Revision 2909 - Directory Listing
Modified Tue Oct 12 20:49:25 2004 UTC (15 years, 4 months ago) by dpvc
In Complex context, make sqrt() and log() of negative numbers return
their complex values.  Also make ^ and ** do the same with negative
bases.  These can be controlled by setting/clearing the
"negativeIsComplex" entry for these functions and operators.

Revision 2788 - Directory Listing
Modified Thu Sep 16 22:19:59 2004 UTC (15 years, 5 months ago) by dpvc
Produce an error when attempting to auto-create a formula using a
function that has been removed from the current context.

Revision 2756 - Directory Listing
Modified Fri Sep 10 14:48:35 2004 UTC (15 years, 5 months ago) by dpvc
Changed the error message produced for functions that have been
removed from the parser.  I hope this will be more appropriate for

Revision 2576 - Directory Listing
Modified Wed Aug 4 20:52:28 2004 UTC (15 years, 6 months ago) by dpvc
Make Parser work with PGauxiliaryFunctions.pl, and add the macro files
needed to initialize the parser.

Revision 2558 - Directory Listing
Added Wed Jul 28 20:32:33 2004 UTC (15 years, 6 months ago) by sh002i
merged changes from rel-2-1-a1 -- stop using that branch.

Sort log by:

aubreyja at gmail dot com
ViewVC Help
Powered by ViewVC 1.0.9