When I need the ability to compile two different versions of something, I use compile time logic. The macro languages for both PL/I and HLASM are sophisticated enough to do fancy tailoring.
-- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 ________________________________________ From: IBM Mainframe Discussion List [IBM-MAIN@LISTSERV.UA.EDU] on behalf of Phil Smith III [li...@akphs.com] Sent: Monday, March 21, 2022 6:15 PM To: IBM-MAIN@LISTSERV.UA.EDU Subject: PL/I question I have a function that can be statically or dynamically linked. Currently the function definition in an include file is [something like]: Declare SOMEFN External('SOMEFN') Entry( Char(*) byaddr, ) returns( byvalue Fixed Bin(31) ) options ( nodescriptor, linkage(system) ); User wants to link dynamically, says this doesn't work. It appears I could add FETCHABLE to the OPTIONS and then it would be dynamic, but reading also suggests (without AFAICT making it clear) that then it can ONLY be linked dynamically. Do I need two include files, one for dynamic link and one for static? Or is there some more elegant way? Ironically, PL/I was my first official programming language*, almost 47 years ago when I sat in on my dad's class at University of Waterloo the summer after 8th grade, but it's been a minute! Plus that was on a Xerox 530**, which might not have had the same linkage editor rules as z/OS. I'd ask him but he died in 2006. Thanks for any suggestions. ...phsiii *First unofficial language was BASIC, a year or two earlier. There was a game on the UofW system called SUMER, where you were king of Mesopotamia and had to manage the grain harvest: so many bushels for food, so many bushels for seed, so many bushels to bribe the barbarians, etc. You could buy and sell land for grain, too. It only went for a cycle of 2 or 3 harvests, and I wanted more; I discovered that it was this semi-readable language and hacked it into asking for a number of harvests to play for. Years later, I realized it was actually BASIC. **My dad ran the Arts Computing Office (ACO) at UofW, which he created to bring computing to the Arts faculty. UofW had a 360/75 (3MB, 1 of real core and 2 solid state-a huge system!) and a /44 and a 370/158, but those were for Math and CS use. Xerox was pushing the 530 at the time, what we'd now call a midrange, with a slogan along the lines of "We're Xerox. We'll always be there for you." A year after he bought the system for the ACO, Xerox abandoned that market. A decade later, they started selling PC compatibles-with the same slogan. He laughed. Later when I was working in Computer Services at UofW as a 19- to 24-year-old, I used to help him with lab hours for his "Intro to computing for Arts students" classes. Not because I was altruistic-it was a good way to meet female Arts students, who had no idea what they were doing with computers and were a LOT better looking than the average female CS student! ---------------------------------------------------------------------- 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