Bonsoir Jean Louis,

Created <https://sourceforge.net/p/oorexx/feature-requests/863/> and committed 
your patch with [r13047].

---rony


On 20.11.2025 07:00, Jean Louis Faucher wrote:
About Simon's mail:
Can be faster if ooRexx5 is built with
Interprocedural optimization (IPO), also known as link-time optimization (LTO)

See mail Enrico 09/08/2020
https://sourceforge.net/p/oorexx/mailman/oorexx-devel/thread/EF50446F-5B4F-442D-BCD2-CE2CFEDE8AC7%40mac.com/#msg37080771

Attached patch: IPO-CMakeLists.txt.patch


T(12)
do outerCounter = 1 until currNum >= 999999999999

Answer....: 7822873594199
    ooRexx 4.2 Elapsed...: 9.867650 seconds
    ooRexx 5.2 Elapsed...: 9.096634 seconds
    ooRexx 5.2 Elapsed...: 8.400673 seconds (IPO)

T(13)
do outerCounter = 1 until currNum >= 9999999999999

Answer....: 7822873594199
    ooRexx 4.2 Elapsed...: 36.143888 seconds
    ooRexx 5.2 Elapsed...: 33.380404 seconds
    ooRexx 5.2 Elapsed...: 30.940000 seconds (IPO)



Test suite without IPO

rexx testOORexx.rex -X native_api

File search:        00:00:01.206683

Suite construction: 00:00:01.040363

Test execution:     00:05:16.749802

Total time:         00:05:19.561522


Test suite with IPO

rexx testOORexx.rex -X native_api

File search:        00:00:01.283647

Suite construction: 00:00:00.519720

Test execution:     00:04:56.374620

Total time:         00:04:58.657757




Begin forwarded message:

*From: *"SIMON HUSIN via groups.io" <[email protected]>
*Subject: **Re: [rexxla-members] Project Euler - Challenge # 932 - Can you make 
it run faster?*
*Date: *20 November 2025 at 01:09:57 CET
*To: *[email protected]
*Resent-From: *[email protected]
*Reply-To: *[email protected]

Hello Mark,

Long time no "talk".

You're correct.  The following is the description of the challenge (https://projecteuler.net/problem=932), titled "2025":





The following is my answer/solution, the complete program script:

/*
Interpreter: Open Object Rexx Version 4.2.0 | Build date: Feb 22 2014 | 
Addressing Mode: 32
             Finished in 3728.644000 seconds = 1 hour and 2 minutes
Interpreter: REXX-Regina_3.8.2 5.00 22 Jun 2014 (32 bit)
             Finished in 4808.967000 seconds = 1 hour and 20 minutes
Operating/S: Windows 11 Pro | Version 10.0.26200.7171
Hardware   : PC with Intel Core i7-8750H @ 2.20GHz | 16 GB RAM
*/
call time 'R'
answer   = 0
currNum  = 9
currDiff = 7
numeric digits 17
do outerCounter = 1 until currNum >= 9999999999999999
   currNum  = currNum  + currDiff
   currDiff = currDiff + 2
   currNLm1 = length(currNum) - 1
   do digitPos = 1 to currNLm1
      tN = substr(currNum, digitPos + 1) / 1
      if tN = 0 then iterate

      if (left(currNum, digitPos) + tN) ** 2 \= left(currNum, digitPos) || tN 
then iterate

      answer = answer + currNum
      iterate outerCounter
   end
end

say 'Answer....:' answer
say 'Elapsed...:' time('E') 'seconds'
return

Cheers,
-Simon @ Nashville, Tennessee

On Wed, Nov 19, 2025 at 3:43 PM RexxLA Webmaster via groups.io <http://groups.io/> <[email protected]> wrote:

    Hi Simon,
    I think you need to be logged into that site to view the actual problem. 
Without a login you
    are presented with the About page.
    Cheers, Mark
    --
-- *Mark Hessling*
    /Webmaster, RexxLA/
    https://www.rexxla.org
_______________________________________________
Oorexx-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to