Java allows confusing constructs too but they are left for the developer
to handle rather than imposed by the language specification:-
 
class Smurf {
 
    int a;
    int b;
 
    Smurf(int a, int b) {
        a = a;
        b = b;
    }
 
}


________________________________

        From: [email protected]
[mailto:[email protected]] On Behalf Of Mark Proctor
        Sent: 24 September 2010 00:46
        To: [email protected]
        Subject: Re: [rules-dev] Drools syntax diagrams - redrawn
        
        
        yes, ? wasn't easy due to java and data munging would get messy
as we map between things.
        
        So we just left it as any valid java identifier, but using the $
prefix as a coding convention make it easier to differentiate fieldnames
and bindings
        Person( age : age )
        Person( age == age )
         
        The above looks a little confusing compared to:
        Person( $age : age )
        Person( age == $age )
        
        Davide wants to enforce the $ prefix so that parsing can be
easier.
        
        Mark
        On 24/09/2010 00:31, Michael Neale wrote: 

                The $name: Pattern thing I am convinced is to do with
Mark's prior history of being abused by perl ;) 

                But the real reason is we wanted to use ?name: Pattern()
- using "?" like the clips lineage of languages - but IIRC even ilog
allows that. We wanted our labels to be compatible with java source code
- where $variable is a valid name (although no one actually uses it) and
?name is not. 

                So here we are ;)


                On Fri, Sep 24, 2010 at 12:29 AM, Greg Barton
<[email protected]> wrote:
                

                        Yes, and I don't think we want to take
readability cues from Perl. :)
                        
                        GreG

                        On Sep 23, 2010, at 3:03, Wolfgang Laun
<[email protected]> wrote:
                        
                        

                                On 23 September 2010 09:31, Bruno Unna
<[email protected]> wrote:
                                

                                FWIW: in Perl, there are both operators
as well (|| and 'or'). However, they are *not* exactly the same.
Although they can be used in any context to render a boolean expression,
their priority makes the difference. Taken from official documentation
(http://bit.ly/dgw4GT): 



                                Low precedence "and", "or", "xor" were
introduced to permit "Perl poetry", or, more seriously, to
                                permit control flow using a logical
expression, especially after function calls without parentheses. 
                                   see Naples or die;  # same as:
see(Napes) || die(); but not: see(Naples || die() );
                                
                                No way this makes any sense in Drools.
                                
                                -W
                                
                                

                                Binary "or" returns the logical
disjunction of the two surrounding expressions. It's equivalent to ||
except for the very low precedence. This makes it useful for control
flow.


                                Nonetheless, it must be taken into
account that the distinction makes sense for a Perl programmer. For a
rules-writing guy (or girl) perhaps the distinction is extremely
obscure.

                                Regards.
                                




        
_______________________________________________
                                rules-dev mailing list
                                [email protected]
        
https://lists.jboss.org/mailman/listinfo/rules-dev
                                



                        _______________________________________________
                        rules-dev mailing list
                        [email protected]
        
https://lists.jboss.org/mailman/listinfo/rules-dev
                        
                        




                -- 
                Michael D Neale
                home: www.michaelneale.net
                blog: michaelneale.blogspot.com
                
                
                _______________________________________________
                rules-dev mailing list
                [email protected]
                https://lists.jboss.org/mailman/listinfo/rules-dev


_______________________________________________
rules-dev mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/rules-dev

Reply via email to