<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p>Sorry that I didn't get back to you on this.  There is a certain
      amount of flexibility in the way the system is set up, partly to
      allow the use of other types of spelling rule, but it's
      unnecessarily messy and I agree it would be useful to clear it
      up.  I wonder whether it would be good to specify a rule via
      %affix rather than %irregular - although %affix without any
      description will amount to `go and look it up in the irregulars
      file', it could also be used to invoke any external component. 
      I'm reluctant to enforce this change in the LKB, since it could
      cause working grammars to break in ways which are difficult to
      debug, but there's presumably less of an issue of small legacy
      grammars with ACE.  Or you might think that the % syntax should
      specify the external component, that %prefix / %suffix mean "the
      rules I give here, plus an irregs file if present" while
      %irregular means "just the irregular file".  <br>
      I can see it either way.<br>
    </p>
    <p>All best,</p>
    <p>Ann<br>
    </p>
    <br>
    <div class="moz-cite-prefix">On 01/07/2016 16:30, Woodley Packard
      wrote:<br>
    </div>
    <blockquote
      cite="mid:7281AA99-B95D-471E-A783-3DD9FCBF60D2@sweaglesw.org"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      Thanks, Ann and Francis.
      <div class=""><br class="">
      </div>
      <div class="">I agree with Ann’s improved characterization, of
        course, and also that a warning would be helpful.  I can have
        ACE do two things:  (1) warn if the STEM value is not
        constrained to be string or some subtype thereof, and (2)
        default to the empty string when an unexpected value comes up
        during actual processing, but print a runtime warning.</div>
      <div class=""><br class="">
      </div>
      <div class="">I think we ought to take this opportunity to further
        clarify though the exact mechanism for flagging which category a
        rule belongs to.  The obvious and nearly status quo convention
        would be that the non-TFS mechanism is invoked when %prefix or
        %suffix is present in the specification of the rule.  At the
        moment we also invite rules into that category when there is an
        irregular form declared in irregs.tab even if no %prefix and
        %suffix is declared; arguably it would be more transparent to
        add a %irregular declaration in-situ before this is legal (and
        forbid irregs.tab entries for undeclared orthographemic rules).</div>
      <div class=""><br class="">
      </div>
      <div class="">There may also be vestiges of other conventions
        laying around, such as flagging by whether or not STEM is
        reentrant and by ND-AFF.  The latter is or was used by the ERG
        (see spelling-change-rule-p from user-fns.lsp, reproduced below;
        I have no sense of whether this is currently coherent since ACE
        does not appear to heed it).  If there isn’t a clear need for
        them I propose that any such mechanisms be deprecated in favor
        of something fully declarative and uniform.</div>
      <div class=""><br class="">
      </div>
      <div class="">-Woodley</div>
      <div class=""><br class="">
      </div>
      <div class="">ERG:</div>
      <div class="">
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;"
          class=""><span style="font-variant-ligatures:
            no-common-ligatures; color: #d53bd3" class="">(</span><span
            style="font-variant-ligatures: no-common-ligatures; color:
            #ce7924" class="">defun</span> spelling-change-rule-p <span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">(</span>rule<span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">)</span></div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; a function which is
          used to prevent the parser </div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; trying to apply a rule
          which affects spelling and</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; which should therefore
          only be applied by the morphology</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; system.  </div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; Old test was for
          something which was a subtype of</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; *morph-rule-type* -
          this tests for whether needs affix:</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; &lt; ND-AFF &gt; = +
          (assuming bool-value-true is default value)</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; in the rule</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;"
          class="">  <span style="font-variant-ligatures:
            no-common-ligatures; color: #d53bd3" class="">(</span><span
            style="font-variant-ligatures: no-common-ligatures; color:
            #ce7924" class="">let</span> <span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">((</span>affix <span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">(</span>get-dag-value <span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">(</span>tdfs-indef</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;"
          class="">                               <span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">(</span>rule-full-fs rule<span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">))</span> <span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">'</span><span
            style="font-variant-ligatures: no-common-ligatures; color:
            #34bbc7" class="">nd-aff</span><span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">)))</span></div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;"
          class="">    <span style="font-variant-ligatures:
            no-common-ligatures; color: #d53bd3" class="">(</span><span
            style="font-variant-ligatures: no-common-ligatures; color:
            #ce7924" class="">and</span> affix <span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">(</span>bool-value-true affix<span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">))))</span></div>
      </div>
      <div class=""><br class="">
      </div>
      <div class="">JACY:</div>
      <div class="">
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;;</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; detect rules that have
          orthographemic variation associated to them; those</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; who do should only be
          applied within the morphology system; this version is</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; a little complicated
          because we change from a full-form set-up to one with</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;; on-line morphology
          during the course.</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;
          color: rgb(83, 48, 225);" class="">;;;</div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;"
          class=""><span style="font-variant-ligatures:
            no-common-ligatures; color: #d53bd3" class="">(</span><span
            style="font-variant-ligatures: no-common-ligatures; color:
            #ce7924" class="">defun</span> spelling-change-rule-p <span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">(</span>rule<span
            style="font-variant-ligatures: no-common-ligatures; color:
            #d53bd3" class="">)</span></div>
        <div style="margin: 0px; font-size: 14px; font-family: Menlo;"
          class="">  <span style="font-variant-ligatures:
            no-common-ligatures; color: #d53bd3" class="">(</span>rule-orthographemicp
          rule<span style="font-variant-ligatures: no-common-ligatures;
            color: #d53bd3" class="">))</span></div>
      </div>
      <div class=""><br class="">
        <div>
          <blockquote type="cite" class="">
            <div class="">On Jul 1, 2016, at 6:29 AM, Francis Bond &lt;<a
                moz-do-not-send="true" href="mailto:bond@ieee.org"
                class=""><a class="moz-txt-link-abbreviated" href="mailto:bond@ieee.org">bond@ieee.org</a></a>&gt; wrote:</div>
            <br class="Apple-interchange-newline">
            <div class="">On Thu, Jun 30, 2016 at 3:17 PM, Woodley
              Packard<br class="">
              &lt;<a moz-do-not-send="true"
                href="mailto:sweaglesw@sweaglesw.org" class="">sweaglesw@sweaglesw.org</a>&gt;
              wrote:<br class="">
              <blockquote type="cite" class="">In the case of Jacy, it
                seems that the rule "vbar-monotransitivization-c-lrule"
                neither declares orthographemic changes (by %suffix,
                %prefix, or entries in the irregulars table) nor
                declares a value for the mother’s STEM.<br class="">
              </blockquote>
              <br class="">
              I think it would be ok to push the burden for this onto
              grammar<br class="">
              developers --- no need for the processor to guess.  In
              this case STEM<br class="">
              should be linked, the rule and a couple of others are
              poorly written<br class="">
              and will be fixed.  Perhaps a friendly warning if this
              case is seen<br class="">
              when compiling the grammar could help us avoid the issue
              in the<br class="">
              future?<br class="">
              <br class="">
              <br class="">
              -- <br class="">
              Francis Bond &lt;<a moz-do-not-send="true"
                href="http://www3.ntu.edu.sg/home/fcbond/" class="">http://www3.ntu.edu.sg/home/fcbond/</a>&gt;<br
                class="">
              Division of Linguistics and Multilingual Studies<br
                class="">
              Nanyang Technological University<br class="">
            </div>
          </blockquote>
        </div>
        <br class="">
      </div>
    </blockquote>
    <br>
  </body>
</html>