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

Henri Biestro commented on JEXL-367:
------------------------------------

The 'thin arrow' syntax will not be deprecated, the 'fat arrow' syntax will be 
added; a JexlFeature will allow choosing the syntax you want to support. Some 
of us still see Java as the base for JEXL ;) .
As a side note, I'll probably introduce 'let' as a lexical block scope variable 
declaration; only equivalent to 'var' when the JexlFeatures are set that way. 
This will allow a finer grain migration towards lexical scope rules (for users 
with numerous gigantic scripts...).
[~dmitri_blinov] What are the differences between 'fat arrow' and function 
(besides syntactic sugar); care to illustrate ?

> Deprecate -> and support =>
> ---------------------------
>
>                 Key: JEXL-367
>                 URL: https://issues.apache.org/jira/browse/JEXL-367
>             Project: Commons JEXL
>          Issue Type: Wish
>    Affects Versions: 3.2.1
>            Reporter: Hussachai Puripunpinyo
>            Assignee: Henri Biestro
>            Priority: Major
>
> The JEXL code surprisingly looks a lot like Javascript. I think this change 
> is a good transition for folks to update the code, and it's pretty fine if 
> they can tolerate using the deprecate syntax and don't mind seeing a warning 
> log pop up every time. 
> I'd like to propose supporting => and deprecate ->.
> The reasons are
>  - JavaScript becomes very popular and many people are familiar with it.
>  - JEXL is more like for a quick short script. In many scenarios, the target 
> audiences are not a programer. They often mistake a language as a JavaScript 
> (from my experience).
>  - JEXL syntax already looks a lot like JavaScript
>  -- var for variable declaration (Java added in Java 10, but JavaScript 
> supports this from the beginning)
>  -- The function keyword
>  -- Implicit type coercion
>  -- Ternary operator
> The proposed change.
>  * Support => in addition to ->
>  * Deprecate -> and show a warning log when it's used.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to