<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    On 22/08/2011 09:18, Geoffrey De Smet wrote:
    <blockquote cite="mid:j2t3c6$ucp$1@dough.gmane.org" type="cite">
      <meta content="text/html; charset=ISO-8859-1"
        http-equiv="Content-Type">
      <title></title>
      <br>
      <br>
      Op 20-08-11 00:42, Mark Proctor schreef:
      <blockquote cite="mid:4E4EE6F3.1060708@codehaus.org" type="cite">
        <pre wrap="">On 19/08/2011 12:42, Geoffrey De Smet wrote:
</pre>
        <blockquote type="cite">
          <pre wrap="">"Good programmers appreciate what you put in,
Great programmers appreciate what you leave out "
   -- Josh Bloch

I also believe that having 2 accumulates is just going to bring
confusion and complexity.
</pre>
        </blockquote>
        <pre wrap="">Over time we'll deprecate the old accumulate. But we must evolve the 
language to improve it, it's not easier as there is no one to copy for 
this, it's virgin territory. That means we can't be afraid to try 
things, and change them if think we can improve it.

Mark</pre>
      </blockquote>
      I am not against adding new features to the language. (*)<br>
      But don't call it "acc" or "accumulate", that will just confuse
      everyone.<br>
    </blockquote>
    The other keyword being discussed is 'for'.<br>
    <br>
    Once 'for' is in place 'accumulate' will be removed from the
    documentation, or atleast relegated t a deprecate stage, so it's
    only there for backwards comptability.<br>
    <br>
    Mark<br>
    <blockquote cite="mid:j2t3c6$ucp$1@dough.gmane.org" type="cite"> <br>
      Call it "gather", collect, hoard, amass, pileUp, cumulate,
      conglomerate, ... anything but accumulate or an abbreviation.<br>
      &nbsp; <a moz-do-not-send="true" class="moz-txt-link-freetext"
        href="http://www.thefreedictionary.com/accumulate">http://www.thefreedictionary.com/accumulate</a><br>
      <br>
      <b>Using the same term for 2 different things greatly disrupts
        communication (= API, manual, code readability, ...).</b><br>
      The 2 WorkingMemory (= same term for 2 different things) are still
      causing confusion:<br>
      &nbsp; org.drools.WorkingMemory<br>
      &nbsp; org.drools.runtime.rule.WorkingMemory<br>
      You can even mix them in your code (several planner examples did
      that for a couple of years before I noticed it).<br>
      Let's investigate ways to clean that up first? For example: move
      the old one to drools-core-legacy-api already, before we
      completely remove it.<br>
      <br>
      <pre class="moz-signature" cols="72">With kind regards,
Geoffrey De Smet</pre>
      <br>
      <br>
      (*) I do believe we need a more future proof system of adding
      keywords and features. I see 2 alternatives:<br>
      A) Specify a drlModel version in the DRL. This allows backwards
      incompatible changes between drlModel versions, but new drools
      jars should still support the last 3 drlModel versions. This is
      similar to:<br>
      -- pom.xml's &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;<br>
      B) Find a way to reserve keywords.<br>
      -- By having to import the keywords?<br>
      &nbsp;&nbsp;&nbsp; import keyword org.drools.parser.acc; // I can now use acc in
      my rules<br>
      &nbsp;&nbsp;&nbsp; import keyword org.drools.parser.thenElse; // I can now use
      thenElse in my rules<br>
      -- By prefixing the keywords with a reserved character.<br>
      &nbsp;&nbsp; For example: @acc, @thenElse or #acc, #thenElse<br>
      -- Like Ceylon, by layout (probably not possible): "Note also that
      annotations like doc, by, see, and deprecated aren't keywords.
      They're just ordinary identifiers. The same is true for
      annotations which are part of the language definition: abstract,
      variable, shared, formal, actual, and friends. On the other hand,
      void is a keyword. "<br>
      <pre class="moz-signature" cols="72">-- 

</pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
rules-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rules-dev@lists.jboss.org">rules-dev@lists.jboss.org</a>
<a class="moz-txt-link-freetext" href="https://lists.jboss.org/mailman/listinfo/rules-dev">https://lists.jboss.org/mailman/listinfo/rules-dev</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>