[ 
https://issues.apache.org/jira/browse/JEXL-307?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16989652#comment-16989652
 ] 

Dmitri Blinov commented on JEXL-307:
------------------------------------

Now that everything works as expected I wonder whether it is possible to 
decouple undeclared variable check in lexical mode from lexical mode itself. 
Can we make undeclared variable check a separate JEXL feature? The problem is 
that now, when lexical feature is enabled, once the variable with the name 
'foo' has been declared, there is no way to access context variable with the 
same name, which requires to completely rewrite and check whole script - this 
addes up additional migration pains.

> Variable redeclaration option
> -----------------------------
>
>                 Key: JEXL-307
>                 URL: https://issues.apache.org/jira/browse/JEXL-307
>             Project: Commons JEXL
>          Issue Type: New Feature
>    Affects Versions: 3.1
>            Reporter: Dmitri Blinov
>            Assignee: Henri Biestro
>            Priority: Minor
>             Fix For: 3.2
>
>
> As of now, JEXL allows a script writer to redeclare a local variable during 
> script evaluation.
> {code:java}
> var a = 1; var a = 2;{code}
> This may lead to potential errors with misspelled names and clashed 
> variables. Checking for already defined variable is a common feature of many 
> languages. This feature can be implemented in JEXL as an additional option of 
> JexlFeatures class, enabled by default, thus allowing compatibility with 
> existing code.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to