Actually, one tiny clarification: % What each \createproblem{}{}{} command does is run a \sagesilent that > does is the following: > % 1. Ensures that a global problem dictionary is defined; if allProblems > isn't defined globally, do allProblems = {} > % 2. Constructs and stores a new problem object from the other two > parameters, treated as Python strings, like this: > % allProblems[r"""#1"""] = new Problem(r"""#2""", r"""#3""") >
Technically, if allProblems isn't defined, then the Sage code in question should define not only allProblems, but the entire Problem class as well. Just in case anyone reading this was about to run off and implement this tonight. ;) -- You received this message because you are subscribed to the Google Groups "sage-edu" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-edu+unsubscr...@googlegroups.com. To post to this group, send email to sage-edu@googlegroups.com. Visit this group at http://groups.google.com/group/sage-edu?hl=en. For more options, visit https://groups.google.com/groups/opt_out.