WeBWorK Problems



by Cindy Loten -
Number of replies: 2

I'm editing some old logic questions created by others at my institution. These question are in-house and not part of the OPL. One of the macros loaded is "logicMacros.pl".  In the comments section of the problem is the following.

COMMENT("Logical symbols defined in logicMacros.pl are used in this problem. They can be overwritten by placing a copy of logicMacros.pl in the course directory and modifying the subroutines in that file.");

As far as I can tell, this is pertinent to the command "$neg = negate();" in the set up for the question.

I've tried looking for information about logicMacros.pl and the only reference I can find is in the forums (https://webwork.maa.org/moodle/mod/forum/discuss.php?d=4204) from 2017.  Is logicMacros.pl deprecated? 

I'm inclined to removed  logicMacros.pl from the list of loaded macros as the problems still run.  From what I understand, if someone wanted to make some course (or institution?) specific changes, those changes go in PGcourse.pl.  In fact, I've noticed some problems in the OPL in Set Theory and Logic/Propositions/Truth Tables  also have  the command $neg = negate();  in the problem set up and don't load the macro logicMacros.pl.  The comment is instead

COMMENT("Logical symbols defined in pg/macros/customizeLaTeX are used in this problem. They can be overwritten by putting new copies of the subroutines PGcourse.pl.");

This second approach seems better. 


In reply to Cindy Loten

Re: logicMacros.pl

by Glenn Rice -

I don't know of a logicMacros.pl macro.  There is a customizeLaTeX.pl macro, and that macro does have a "negate" method.  Note that macro is also loaded by PGstandard.pl which all problems should load.  Any of the methods in the  file can be redefined in PGcourse.pl.  So you should remove the loading of the logicMacros.pl file as you said.