[system] / trunk / pg / lib / Parser / Context / Default.pm Repository:
ViewVC logotype

Log of /trunk/pg/lib/Parser/Context/Default.pm

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 3587 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Aug 30 00:36:55 2005 UTC (14 years, 3 months ago) by dpvc
File length: 13617 byte(s)
Diff to previous 3494
Added a Point context that is a copy of the Vector context.  This will
allow users to override some settings in Vector context (namely, how
they are entered and displayed) without preventing users from being
able to enter points (in Point context).

Revision 3494 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Aug 12 23:02:11 2005 UTC (14 years, 3 months ago) by dpvc
File length: 13499 byte(s)
Diff to previous 3477
Made the 'R' constant in Interval context show up as a bold R in TeX
mode.

Revision 3477 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 11 20:57:18 2005 UTC (14 years, 3 months ago) by dpvc
File length: 13440 byte(s)
Diff to previous 3474
Added ability to subtract intervals, sets and unions.  Adjusted the
precedence of the union 'U' to be above _ and + so that things like
(1,5) U (7,10) - {8} U (2,3) will do ((1,5) U (7,10)) - ({8} U (2,3))
rather than the previous (1,5) U ((7,10) - {8}) U (2,3).  Finally,
added a constant 'R' to the Interval context that is equivalent to
(-inf,inf), so you can do things like R-{0} now.

Still need to work out reducing unions so that things like (1,3)U(2,4)
can become (1,4).

Revision 3474 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 11 14:37:18 2005 UTC (14 years, 3 months ago) by dpvc
File length: 13305 byte(s)
Diff to previous 3367
Changes needed for new Set object, plus for moving string, TeX and
perl into Value.pm.  Also removed unneeded spaces in perl versions of
the constants (these were to fix problems with the minus sign, but
that is now being handled by the minus operators themselves).

Revision 3367 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jul 12 02:02:46 2005 UTC (14 years, 4 months ago) by dpvc
File length: 12790 byte(s)
Diff to previous 3334
Fixed problem with minus signs in formulas that are turned into perl
mode.  Perl needs extra spaces to avoid problems with -e type operators.

Revision 3334 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Jul 3 20:10:37 2005 UTC (14 years, 5 months ago) by dpvc
File length: 12762 byte(s)
Diff to previous 3203
Updates to allow string matches to be case-insensitive.  This is now
the default, and can be overridden in the Context by setting the
string's "caseSensitive" attribute.  e.g.:

	 Context()->strings->add("FooBar"=>{caseSensitive=>1});

would rewuire "FooBar" to be entered exactly as typed.

Revision 3203 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 28 23:46:06 2005 UTC (14 years, 8 months ago) by dpvc
File length: 12905 byte(s)
Diff to previous 2914
Handle extra parentheses better.

Revision 2914 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Oct 13 02:41:33 2004 UTC (15 years, 1 month ago) by dpvc
File length: 12899 byte(s)
Diff to previous 2909
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 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 12 20:49:25 2004 UTC (15 years, 1 month ago) by dpvc
File length: 12845 byte(s)
Diff to previous 2802
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 2802 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Sep 19 14:43:32 2004 UTC (15 years, 2 months ago) by dpvc
File length: 12444 byte(s)
Diff to previous 2796
Eliminated unneeded parentheses in TeX output when unary minus and
plus are used with fractions.

Revision 2796 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Sep 19 01:15:03 2004 UTC (15 years, 2 months ago) by dpvc
File length: 12398 byte(s)
Diff to previous 2789
Added flags that control the reductions performed by
Formula()->reduce.  Each reduction operation can be individually
enabled or disabled in the context, and in the reduce() call itself.

More complex reductions need to be developed.

Revision 2789 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Sep 16 22:24:32 2004 UTC (15 years, 2 months ago) by dpvc
File length: 12366 byte(s)
Diff to previous 2701
Added context flags to control automatic reduction of operations that
involve only constant values.  The default is to combine constants,
but this can now be disabled.

Also added a new flag to control the addition of extra parentheses
that make string values painfully unambiguous (these are for
situations that students tend to get wrong).  By default this is
turned off (so that professor answers won't contain excessive
parentheses), but the answer checker will be made to turn this on for
student answers.

Finally, when extra parens are added to formulas, they alternate
between ( ) and [ ] to make it easier to read.

Revision 2701 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Aug 28 15:53:09 2004 UTC (15 years, 3 months ago) by dpvc
File length: 12098 byte(s)
Diff to previous 2696
Only convert (f(x))^2 to f^2(x) for specified functions f
(as marked in the Context).

Revision 2696 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Aug 28 12:34:56 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11835 byte(s)
Diff to previous 2678
Improved TeX and string output in a number of situations.  Improved
use of parentheses to avoid things like x+-3.  Fixed wrong parentheses
in powers.  Display (sin(x))^2 as sin^2(x) in TeX output.

Revision 2678 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Aug 23 23:55:37 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11814 byte(s)
Diff to previous 2671
Modified the parser so that the classes for the various object
constructors are stored in the context table rather than hard-coded
into the parser.  That way, you can override the default classes with
your own.  This gives you even more complete control to modify the
parser.  (You had been able to replace the definitions of operators,
functions and list-like objects, but could not override the behaviour
of numbers, strings, variables, and so on.  Now you can.)

This effects most of the files, but only by changing the name of the
calls that create the various objects.

There are also a couple of other minor fixes.

Revision 2671 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Aug 22 21:18:06 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11932 byte(s)
Diff to previous 2665
Fixed some inconsistencies between handing of matrices within the
parser and Value packages.  Added a predefined Matrix context.

Revision 2665 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Aug 22 00:41:44 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11679 byte(s)
Diff to previous 2653
Made the default context be Numeric context rather than Full context.
Since there is only one variable in this context, it will speed up
function answer checking.  It will also encourage you to choose the
correct context explicitly.

Also changed Complex context to have z as the only variable.  If you
want x and y as reals, you need to add them in by hand.  Again, this
is for efficiency in answer checking.

Revision 2653 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 19 17:31:18 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11683 byte(s)
Diff to previous 2643
Fixed error with handling of +infinity and -infinity.
(They had been defined as strings, but now we can let the + and -
operators handle them).

Revision 2643 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 19 11:55:56 2004 UTC (15 years, 3 months ago) by dpvc
File length: 12004 byte(s)
Diff to previous 2629
Use the standard precedences rather than the experimental ones by
default.  The professor will need to specificaly request the
non-standard ones, for now.

Revision 2629 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Aug 17 02:01:27 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11962 byte(s)
Diff to previous 2622
Fixed a number of minor problems with creating perl functions from
formulas (this is done automatically as part of the function answer
checker, so is showing up now that I have that checker in place).

Also improved error messages in the function answer checker, and fixed
a bug when students enter a constant list or union when the answer
checker expects formulas.

Revision 2622 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Aug 15 22:46:57 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11895 byte(s)
Diff to previous 2609
Created the first draft of the Parser's function answer checker.  Some
work still needs to be done, in particular, type mismatches are not
being reported, and lists are being processed only as ordered lists
with no partial credit.

This doesn't implement everything from fun_cmp.  In particular, there
is no support for parameter matching at the moment.  This will have to
be added, but I'm not quite sure how to do it when the function's
return value is not a real number (e.g., an interval).

On the other hand, this checker is more forgiving about domain errors:
if tries a point where the professor's function is not defined, it
ignores that one and looks for another (until it decides it can't find
one).  Once it has these points, it tries them on the student's
answer, and if the student's function is undefined, then the student
answer is wrong (since it is not defined somewhere that the
professor's funciton is).  This avoids the "Error evaluating student
function at ..." messages, which just confused most students anyway.

Revision 2609 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Aug 14 13:54:52 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11854 byte(s)
Diff to previous 2607
Added a String type to the Value package.  Mostly this is to make it
possible to generate an answer checker for it that uses the parser.
It also makes it more consistent for handling things like stringify,
especially when they are recursively called internally.

Added new default strings "NONE" and "DNE", since these get used a
lot.

Modified how the default parameters are set up for the answer
checkers, and how the answer checker reports the expected answer type
in type mismatch error messages.

Revision 2607 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Aug 14 11:26:49 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11755 byte(s)
Diff to previous 2605
Allow unary + and - to work on infinities.

Revision 2605 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Aug 14 02:50:18 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11715 byte(s)
Diff to previous 2597
Incorporated infinities into Parser package better.  They have been
stored as String objects (with extra data) in the parser, and I've
left it that way, but now they convert to/from Vallue::Infinity
objects correctly, and these are used for generating the output.

Also added the Infinity answer checker, and adjusted the error
messages produces by type mismatches in the answer checkers and
elsewhere.

Revision 2597 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Aug 13 11:38:22 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11752 byte(s)
Diff to previous 2596
Added answer checker for parallel vectors.
Added option to number checker to have it not report type mismatches
for the known strings (like 'infinity').  (Really need a class for
infinities, and a Value.pm class for strings.)

Revision 2596 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 12 23:11:32 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11750 byte(s)
Diff to previous 2594
Have parser handle infinities better.

Revision 2594 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 12 20:17:18 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11589 byte(s)
Diff to previous 2592
Fixes for handling intervals better.  In particular, deal better with
ambiguous situations, like (1,2) that could be a point.

You can use [a,a] to specify the single point a.  I'd like to make {a}
represent this (and maybe even {a,b,c} to form finite sets), but this
would interfere with the use of { and } as alternative parentheses.
(Does anyone really use these?)

Do we need a cross product for intervals (and sets) as a means of
representing regions in R^2 (or higher)?

Revision 2592 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 12 16:40:47 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11272 byte(s)
Diff to previous 2579
A number of small fixes.  Most were to fix minor bugs in string and
TeX output, particulary for the various list-based objects (like
vectors, intervals, etc.).  There were also some bug fixes in the
comparison routines.  Some additional checks were added for valid
intervals when the coordinates are formulas.

Revision 2579 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Aug 9 21:38:01 2004 UTC (15 years, 3 months ago) by dpvc
File length: 11141 byte(s)
Diff to previous 2558
Significant update to new parser.

New features include:

  Better control over format of vector output (you can now
    specify ijk-format rather than <...> format)

  "Fuzzy" reals, where the relations like == return true when the
    two values are "close enough".  (This is controlable using
    parameters similar to those used in NUM_CMP).

  The fuzzy reals are now used in vectors/points/matrices/complexes/intervals
    and so on so that their relations will also be fuzzy.  E.g.,
    (1E-13,2) == (0,3) will be true, and norm(Vector(0,1E-13)) will
    equal 0.

  The two main portions of the parser (the Parser and Value packages)
    now share a common context object for configuration purposes.

Revision 2558 - (view) (download) (as text) (annotate) - [select for diffs]
Added Wed Jul 28 20:32:33 2004 UTC (15 years, 4 months ago) by sh002i
File length: 10999 byte(s)
merged changes from rel-2-1-a1 -- stop using that branch.

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

aubreyja at gmail dot com
ViewVC Help
Powered by ViewVC 1.0.9