In honour of Talk Like A Pirate day, I submitted the following bug report today at work:
Both at C and in Allegro, I be assertin' this rule:
In MT: AISDataMt. Direction: Forward. F: (implies (and (unknownSentence (substring "<h2" ?LEADING)) (unknownSentence (substring "<h2" ?SECTION-TEXT)) (webPageURL ?PAGE-AIS ?URL) (correspondingAIS ?PAGE-CW ?PAGE-AIS) (isa ?PAGE-CW LearnByReadingDocument) (concatenateStrings ?PAGE-SOURCE ?LEADING "<h2>" ?SECTION-TEXT "<h2" ??FOLLOWING) (evaluate ?PAGE-SOURCE (URLSourceFn ?URL)) (termOfUnit ?NTHOCCURRENCEOFSTRUCTURETYPEINSTRUCTUREFN (NthOccurrenceOfStructureTypeInStructureFn 1 (HTMLStringTypeByTagFn H2-HTMLTag) ?PAGE-AIS))) (cisContainsAIS ?NTHOCCURRENCEOFSTRUCTURETYPEINSTRUCTUREFN ?SECTION-TEXT)).an' it be creatin' 907 dependents, 895 o' which be mutinous scurvy dependents that I be blastin' from the high seas with a swish of me (fi-tms-reconsider-gafs-int #$cisContainsAIS), with me upcomin' patch to fi-tms-reconsider-gafs-int, o'course.
Then I be repropagatin' that confounded rule, and I see wi' me own two eyes twenty an' eight dependents! I swish me trusty (fi-tms-reconsider-gafs-int #$cisContainsAIS) again, an' the fated number be droppin' to a lowly 12. Fire the repropagation cannon! 24! Blow 'em away with TMS! 12! Fire cannon! 24!
Avast! Now we be locked in an eternal battle o' the damned. Wi' 24 on the one side an' 12 on t'other, we can sail 'round and 'round this whirlpool 'til we discover the traitorous insect at its source, and slice out its murderous heart.
Arrr! I see that the barnacle-infested insect be naught but a misplaced faith in the permanence of all things in this misbegotten world. Ye canna trust yer own mate #$URLSourceFn to give ye the same devil-confounded answer on the same devil-confounded day. One time it be spewin' out a fat string endin' in "", an the next time it be spewing' out "" hl-verify on :EVAL supports do be assumin' that evaluatable functions be spewin' out the same values when they be aksed again, an' so any forward rule relyin' on #$URLSourceFn be suicide! Mark my words!
But avast! This pernicious, suicidal insect that hae been gnawin' on me bones all mornin' an' afternoon... 'tis not e'en the true traitor! 'Tis naught but a distraction from our true quarry!
Methinks there may be only two traitors in our midst: the impermanence of #$URLSourceFn (I be spinnin' off a new bug, bug 19091, for that one!) and mayhap the devious #$skolemizeForward (bug 18924). I be settin' my sails fer those two, and hopin' that once they both be conquered an' their bones restin' at the bottom o' the deep blue sea, that this problem here be vanishin' like a whisper in the wind.