Thanks again for the explanation David - I am learning a lot installing this product. See my other posting about the PDSE to PDS issue.
-----Original Message----- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of David Crayford Sent: Thursday, October 23, 2014 10:22 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: [ANN] Lua4z: the Lua programming language on z/OS, with batteries On 23/10/2014 10:02 PM, Barkow, Eileen wrote: > Thanks for the explanation about the ?s but I still do not see what they are > being used to substitute for. > I passed the UNIX IVP test, but my profile contains this: Lua has a module system that searches LUA_PATH substituting ? for the module name that is loaded with the require() function http://www.lua.org/pil/8.1.html It's one of the big pluses vs REXX because you can write reusable code which can be loaded with require() which will return a Lua table or function that you can just call. With REXX you can't share stem variables between external modules which leads to copy and paste jobs. hexdump = require("hexdump") Will search the following path, where //DD:LUA(HEXDUMP) is a MVS data set. That's only relevant when running native in TSO or batdch. ./hexdump.lua;/u/eileen/j15/lua/share/lua/5.1/hexdump.lua;/u/eileen/j15/lua/share/lua/5.1/hexdump/ init.lua;/u/eileen/j15/lua/lib/lua/5.1/hexdump.lua;/u/eileen/j15/lua/lib/lua/5.1/hexdump/ini t.lua;//DD:LUA(hexdump) > $ echo $LUA_PATH > ./?.lua;/u/eileen/j15/lua/share/lua/5.1/?.lua;/u/eileen/j15/lua/share/ > lua/5.1/?/ > init.lua;/u/eileen/j15/lua/lib/lua/5.1/?.lua;/u/eileen/j15/lua/lib/lua > /5.1/?/ini > t.lua;//DD:LUA(?) > $ echo $LUA_CPATH > ./?.so;/u/eileen/j15/lua/lib/lua/5.1/?.so;/u/eileen/j15/lua/lib/lua/5.1/loadall. > so;//? > $ > > -----Original Message----- > From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] > On Behalf Of David Crayford > Sent: Thursday, October 23, 2014 9:49 AM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Re: [ANN] Lua4z: the Lua programming language on z/OS, with > batteries > > On 23/10/2014 9:36 PM, Barkow, Eileen wrote: >> You need to enter the y in lower case - otherwise those dataset errors occur. > I have now changed the installation script to fold all input to upper case. > >> I am not up to snuff on UNIX lately and do not understand what the ? in the >> environment variables mean. >> They did work when I added them to my profile, but I never saw this syntax >> before: >> >> export LUA_PATH="./?.lua;\ >> $LUA_HOME/share/lua/5.1/?.lua;\ >> $LUA_HOME/share/lua/5.1/?/init.lua;\ >> $LUA_HOME/lib/lua/5.1/?.lua;\ >> $LUA_HOME/lib/lua/5.1/?/init.lua;\ >> //DD:LUA(?)" > The ? is a placeholder for the module name. So if you do the following > > local m = require "test" it will replace "?" with "test" in the search path. > The //DD:LUA(?) will resolve to //DD:LUA(TEST) so if you are running in TSO > or batch it will load the module for a PDS(E) allocated to a DDname of LUA. > > If you are running native then my suggestion is to set LUA_HOME in the > LUACONF member to make your life easier > http://lua4z.com/doc/manual/install.md.html. > >> -----Original Message----- >> From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] >> On Behalf Of David Crayford >> Sent: Thursday, October 23, 2014 9:24 AM >> To: IBM-MAIN@LISTSERV.UA.EDU >> Subject: Re: [ANN] Lua4z: the Lua programming language on z/OS, with >> batteries >> >> On 23/10/2014 8:42 PM, John McKown wrote: >>> Well, I got it installed. I ran into a "problem" with the >>> ./lua4z-1.0.0.bin when I ran it a second time. The first time, it >>> said it couldn't find the PDSEs (LOADLIB and SAMPLIB) and did I want >>> to define them? All is good. I reply "Y" and they are allocated. >>> When I ran the script a second time, it did the same. It did _not_ >>> properly detect that the PDSEs existed. It tried to allocate them >>> again, and I got error messages from that allocation. The script continued >>> to run. >>> All in all, I got what I needed, but it seems to point out a problem >>> with the installation script. Oh, I entered the data set names in >>> lower case, which might be the problem. >> Many thanks for testing this John. Good catch! >> >>> The lua4z/examples/ivp.lua fails when I run it from my UNIX shell. >>> >>> ==== >>> >>> LIH1:TSH009:/HM/lua4z/examples$ >>> lua ivp.lua >>> Lua4z installation verification procedure (IVP) >>> >>> Checking LUA_PATH configuration: passed Checking LUA_CPATH >>> configuration: failed >>> >>> Test results: >>> 1 passed >>> 1 failed >>> >>> LIH1:TSH009:/HM/lua4z/examples$ >>> printenv | grep LUA_ >>> LUA_PATH=/HM/lua4z/share/lua/5.1/?.lua;./?.lua;/HM/lua4z/share/lua/5. >>> 1 /?/init.lua;/HM/lua4z/lua/5.1/?.lua;/HM/lua4z/install/?.lua >>> LUA_CPATH=./?.so;/HM/lua4z/lib/lua/5.1/?.so >>> LIH1:TSH009:/HM/lua4z/examples$ >>> ==== >>> >>> I looked at the ivp.lua. It references a variable "modules" which >>> contains "cjson" and "socket". There exists an cjson.so in the >>> LUA_CPATH. But "socket" is a directory in /HM/lua4z/lib/lua/5.1, not an >>> ".so" file. >>> Granted, I need to read up on lua, but given the results, this seems >>> like it may be a problem in the ivp.lua script. >>> >>> Minor nits, but thought I'd give you a heads up. >>> >> Can I convince you to try it again. I've uploaded an updated IVP. >> >> --------------------------------------------------------------------- >> - 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 > ---------------------------------------------------------------------- > 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 ---------------------------------------------------------------------- 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