summaryrefslogtreecommitdiff
path: root/src/compiler/GF/Grammar/PatternMatch.hs
AgeCommit message (Collapse)Author
2013-09-05Fix an old bug that prevented pattern matching agains values containg tableshallgren
The function GF.Grammar.PatternMatch.isInConstantForm returned False for all tables, causing matchPattern to fail, claiming that "variables occur in" the term if it contains tables. This problem is several years old, confirmed present in GF 3.2.10 (Oct 2010).
2013-02-28pattern match length estimation code simplicationhallgren
2013-02-27Faster regular expression pattern matching in the grammar compiler.hallgren
The sequence operator (x+y) was implemented by splitting the string to be matched at all positions and trying to match the parts against the two subpatterns. To reduce the number of splits, we now estimate the minimum and maximum length of the string that the subpatterns could match. For common cases, where one of the subpatterns is a string of known length, like in (x+"y") or (x + ("a"|"o"|"u"|"e")+"y"), only one split will be tried.
2012-11-07GF.Grammar.PatternMatch: relax overly restrictive type signatureshallgren
2011-10-20Some experiments with PSeq (left commented out)hallgren
2011-08-30PatternMatch.hs: commented out suspicious unused function varsOfPatthallgren
2010-05-28refactoring in GF.Grammar.Grammarkrasimir
2009-12-13reorganize the directories under src, and rescue the JavaScript interpreter ↵krasimir
from deprecated