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

Eric Milles edited comment on GROOVY-11287 at 5/6/25 4:57 PM:
--------------------------------------------------------------

Let me see if I can come up with a limited scope that can be widened 
little-by-little.  My experiment was for all assignment expressions.  I might 
start with just variables, then plus \(+\), then minus \(-\) and so on.


was (Author: emilles):
Let me see if I can come up with a limited scope that can be widened 
little-by-little.  My experiment was for all assignment expressions.  I might 
start with just variables, then plus (+), then minus (-) and so on.

> Perform constant folding for basic math calculations in CS
> ----------------------------------------------------------
>
>                 Key: GROOVY-11287
>                 URL: https://issues.apache.org/jira/browse/GROOVY-11287
>             Project: Groovy
>          Issue Type: New Feature
>          Components: performance, Static compilation
>            Reporter: Oscar N
>            Assignee: Eric Milles
>            Priority: Major
>
> I have the following Groovy code and its Java equivalent:
> {code:groovy}
> @CompileStatic
> final class Main {
>     private static final int ONE = 1
>     static void main(String[] args) {
>         int two = ONE + 1
>         println two
>     }
> }
> {code}
> {code:java}
> public final class JavaMain {
>     private static final int ONE = 1;
>     public static void main(String[] args) {
>         int two = ONE + 1;
>         System.out.println(two);
>     }
> }
> {code}
> In Groovy, it currently compiles to:
> {code}int two = ONE + 1{code}
> In Java, the calculation is done at compile-time and inlined:
> {code}int two = 2{code}
> It would be great if Groovy also did this.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to