--- loncom/homework/lonmaxima.pm 2017/03/07 16:04:35 1.36 +++ loncom/homework/lonmaxima.pm 2017/03/07 18:28:02 1.37 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # Interface routines to MAXIMA CAS # -# $Id: lonmaxima.pm,v 1.36 2017/03/07 16:04:35 raeburn Exp $ +# $Id: lonmaxima.pm,v 1.37 2017/03/07 18:28:02 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -155,9 +155,6 @@ sub maxima_eval { sub compareterms { my ($socket,$terma,$termb)=@_; - if ($terma =~ m{\(\s*\([^)]*$}) { - return 'Error: blacklisted'; - } my $difference='('.$terma.')-('.$termb.')'; if (&blacklisted($difference)) { return 'Error: blacklisted'; } my $reply=&maximareply($socket,'trigsimp(trigreduce('.$difference.'));'); @@ -169,7 +166,10 @@ sub compareterms { sub maxima_check { my ($response,$answer,$reterror) = @_; my $socket=&connect(); - my $reply=&compareterms($socket,$response,$answer); + my $reply=&maximareply($socket,$response.';'); + unless ($reply=~/^Error\:/) { + $reply=&compareterms($socket,$response,$answer); + } &disconnect($socket); # integer to string mappings come from capaParser.h # 1 maps to 'EXACT_ANS'