The problem is that some of those are incomplete, not z/OS, or not up to date. 
I'd like to see z/OS positioned to use the full range of current 
implementations of popular languages and interpreters, e.g., MoarVM, Qobe. What 
I'd really like is for IBM et al to work with CPAN et al to get z/OS changes 
into the official code bases. Running in a container is certainly useful, but 
addresses a different problem.



--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3

________________________________________
From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of 
Timothy Sipples [sipp...@sg.ibm.com]
Sent: Sunday, May 10, 2020 11:42 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: Developers say Google's Go is 'most sought after' programming 
language of 2020

Shmuel Metz wrote:
>Now if they could just bring z/OS support for Kotlin, Lua,
>Perl, Raku, Ruby and Rust up to date ...
>Yes, bringing the port up to date includes first porting it ;-)

Let's take these in order....

1. As far as I know, as long as you use the Kotlin compiler to target a
Java Runtime Environment (JRE) -- the typical/usual pattern -- your
program will (also) run on z/OS. The basic command line compiler syntax is
as follows, assuming Kotlin source code in the file hello.kt:

kotlinc hello.kt -include-runtime -d hello.jar
java -jar hello.jar

There's also a potential future path that'll support Kotlin's LLVM target
(since z/OS now supports LLVM), but that's speculative.

2. There's a z/OS build of Lua available here:

http://secure-web.cisco.com/1nKNP4GyvVRODUkXu1ywIAoH4u7BdSjxSdtc9G7Wxk2MvWkEN9j0Oy-x-8l3-rQnmy1X1w39ORA6BC8MWoP1jX3BWYSyeXJvhCMD5w99Alza7MY2o4jR0B30n9uTrG8esQlkZaofUgwa_ETYgm65yhdpDvq4gvRdnBzmmRo3KK9zCdVCfDNojjmpBXbT5AkSfdQip-rt7HjxDpyRX_XcINCtGpW3YeH4V9p-O1ReDBAGy6iPTLHs4gtuYxiHqdrmpu5kYEdwHPZA4j8u2ctJ6N5lgsZIVoFyx4_pm0o-KEOV1SK9mtqooNKydOi5NFzOKHdEzZ9wh7fCD8xh1qCGgzazC3yya21X6nDwLWXcmwEXx8yAbZ8ISI9qqfq_vfdeTbH0umh9YtgXMvr8xNxqHgdTHqSOwtNxLlqibyLCubxx3w2ZRNL-o1oxXPn695zap/http%3A%2F%2Flua4z.com

This is a circa 2014 build of Lua. Fundi Software created, maintains, and
supports this distribution, so if you'd like something newer then feel
free to inquire.

3. Rocket Software offers Perl for z/OS here (currently 5.24.0, which was
released on May 8, 2016):

https://secure-web.cisco.com/1alV14CozZPvgagoYhec5SZzxxXLY2QZW5Lh-LpUivj4Jo1Yq5pgL0CPhr2fdPSW5aEZJbt1QJYO8mF5VhTj2twyVeUn7SGtZ57viHj9fgJ_YsvpB-0FGX9flIi7tZNfOWX3ZcS3Z7W0xftx5OnRjpDj0jH1_LgYm-J5SCl7SPflDaPxV8FhhCTZB6zcnft4CvPu98JGTIE8_pc7Q2JwoI-URXN_Y7SSEssXlWQaXDA6q6ufqoFoIfZupV9PMGax0_VlYph5v55BUjmwacxKxfzzDUNErIRE234SCGK1AkqiNANQU3-aKZH69wwD2sJU4Pipx-HyZcKjoiNXr3XlvpQVulsA0FaLlOxmB993elgcNjvw-OPUxdSiR2M0WxPjUzhliP8cXRpXtqT64zFcqoAmwdh8JlgVN5hdV9-7xNAqGq0MJ6YiNY4YXMTKd3O7EIYQjNRtVE9ilXXblLYA7fw/https%3A%2F%2Fwww.rocketsoftware.com%2Fzos-open-source

4. For Raku, go grab the Rakudo distribution and target a JVM
(--target=jar). Or use Rakudo.js to target Node.js (JavaScript) since
Node.js is available for z/OS:

https://www.ibm.com/products/sdk-nodejs-compiler-zos

To my knowledge there's no difficulty with either path.

5. JRuby is available:

https://secure-web.cisco.com/1_uMq3GLJ9HTGBlszWMSuyLJrFJw7L9oeYIJA-3of5gQzsfySNu6IgZvmoj4zQtpA9lI2PGp3gi37A0pcV_-akxGAtvM7PPvmhQaqI_HrU1F03gQZVn35JHKRfhbKi_akuMCHKl6Jxw0XTe5h_A8r_Yf4sJD7K_tifTzN0Wcd1oALF_Ulqx7eFUpt1QydCRax91Si77W-nrrfiCQCtHg1xIUOB4uuAsqT9R3a5uwlgxgIGMaAUHzdv4ZRNKZjHpw1Cq5lmWNznGvBkzF2kmDGzL4BrUDhQaZn8JLU3EiiHQpdipBeG5ZYp037SdHI34BSSZJKAAggOFiZg2I7-YzuxoBAdQbgos8gDrHFgcIRT3eZrCaAKWY6rB9UxqQ-KP9rb48Z_sbz6vv73PKDfCvySGgaZ2mOYe2xCzX7SfHNvWdj86FRFJbr83pY3-d_3q20LVdf4cpThZgRwCSBhTyCYg/https%3A%2F%2Fwww.jruby.org

The best implementation of Ruby for z/OS is probably currently the Docker
container image that runs in the z/OS Container Extensions:

https://secure-web.cisco.com/183dflPtktXM2fwPPw_eirxf06lcUK0v_jn8pu39cKPKdfWNrFJXD3y_qQia_gjA1OlKuSGjQw07N1njqjr0y0w5EjkVpYZkdgcOaWwlsrvrIXKuP6mxFCq-yjuJf93g9B-gj1bWRZFS_8H0E93go7cFPI893PGM8BCid_gJIeHE-T4icFYbAVav4ldhfnYw4l9VsHjT3ktOKdR6c0eMG-AOCvbkDDKzlKsgJRtUtO1pkSucSK-u2OWSR2f8Wy4RSZiwTR5ATSmZdZxiSVElFJoUpyzzfV_aL1ptFI2o-pb4lZT4Jh1rLFC2xBVuN46hYBuLTTm7OiW2G3bMkPvBFEJhJ84UQLMwPlIHxdA4aGoOXyXRbMITyVdgjuupQCn_OI5pkEUyah5k1PI5WawbD9tA8H_Le3789K7VQHINq48UyoaaS9zn8nmZTeAfxuF8qEtCvP8UhkBeuLiL9595M0w/https%3A%2F%2Fhub.docker.com%2F_%2Fruby

6. Rust will need LLVM, now available on z/OS. However, you can already
compile and run Rust code via the z/OS Container Extensions.

- - - - - - - - - -
Timothy Sipples
I.T. Architect Executive
Digital Asset & Other Industry Solutions
IBM Z & LinuxONE
- - - - - - - - - -
E-Mail: sipp...@sg.ibm.com

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to