Knowledge

IBM PL/S

Source đź“ť

310:, IBM, however, refused to provide its PL/S compiler to customers, claiming it was a significant competitive advantage.  Not having the compiler meant that neither competitors nor customers could modify the MVS code at the PL/S source level, and could only modify the generated assembler code.  However, modifications made at the generated assembler level were easily obsoleted when IBM modified the PL/S source code and distributed re-generated assembler code. This was particularly true of modifications to PL/S generated data structures.  Rand, therefore, decided to develop its own version of a PL/S compiler to meet both operational objectives and contractual commitments. 36: 215: 297: 339:
of its licensed intellectual property is not known. The phase names of this PL/S compiler were the same as the corresponding phase names of IBM's PL/I Optimizer compiler, with the initial "I" (IBM) in each phase name being replaced by an initial "J" (Japan). All IBM copyright notices (source and object) within the modules were deleted to hide their true origin and ownership.
293:” was developed to allow Arpanet interrupts to be handled by specially written code while all other interrupts were handled by MVT.  When the MVS operating system was announced by IBM, Rand volunteered as an early “beta” site for the operating system with the intent of porting the hypervisor and other modifications to MVS. 338:
A fully compliant PL/S compiler was "developed" by Fujitsu Ltd in the late-1970s, adapting IBM's PL/I Optimizer compiler source code as its starting point. This PL/S compiler was used internally by Fujitsu, and also by Fujitsu's external affiliates. Whether or not IBM was aware of this unlicensed use
380:
W.R. Brittenham and B.F. Melkun, "The Systems Programming Language Problem", Proceedings of the IFIP Working Conference on Machine Oriented Higher Level Languages, Trondheim, Norway, August 29–31, 1973, pp. 29–47. Amsterdam: North-Holland Publishing Co.; New York: American Elsevier, 1974. This
254:
language.  This was assured by parsing many thousands of lines of IBM written PL/S code taken from the MVS distribution files.  The assembler language code produced by the Rand RL/S compiler is not identical to the code produced by IBM’s PL/S compiler, but it is functionally equivalent.
329:
were distributed to attendees.  IBM quickly responded claiming the language was “proprietary”.  While Rand admitted no wrong doing in developing RL/S, Rand management agreed not to distribute the compiler publicly.  Rand, however, continued to use the RL/S language and compiler
243:).  The Rand RL/S compiler was developed independently of and without any assistance from IBM.  Only publicly available, non-copyrighted PL/S documentation and PL/S source and generated assembler code examples from IBM distributed source files for the 157:
By the 1970s, IBM was rewriting its flagship operating system in PL/S. Although users frequently asked IBM to release PL/S for their use, IBM refused, saying that the product was proprietary. Their concern was that open PL/S would give competitors,
197:
PL/S was succeeded by PL/S II, PL/S III and PL/AS (Programming Language/Advanced Systems), and then PL/X (Programming Language/Cross Systems). PL/DS (Programming Language/Distributed Systems) was a closely related language used to develop the
190:
vendors a competitive advantage. However, even though they refused to make available a compiler, they shipped the PL/S source code to large parts of the OS to customers, many of whom thus became familiar with reading it.
317:
and later converted to RL/S to improve performance. With few restrictions, RL/S programs could be developed using IBM’s PL/I compiler for preprocessing and debugging, with the final code then compiled by RL/S.
205:
As the market for computers and software shifted away from IBM mainframes and MVS, IBM recanted and has offered the current versions of PL/S to select customers (ISVs through the Developer Partner program.)
381:
paper explores the technical and psychological problems encountered in implementing PL/S. The language and compiler are described. The discussion that followed presentation of the paper is included.
289:, including modifications to improve the performance of the Arpanet on its IBM 360 computer.  Because MVT did not process network interrupts quickly enough to handle the Arpanet traffic, a “ 307: 410: 323: 407:, International Business Machines Corp., 1974. GC28-6794-0 Note that this manual is very out of date with respect to the PL/X language in use today. 151: 65: 228:
was developed in the early 1970s by the Computation Center of the Rand Corporation in Santa Monica, CA.  It was implemented using the
428: 443: 438: 321:
The Rand RL/S language and compiler were publicly announced in August, 1976, at a Share meeting where numerous copies of the
87: 58: 370:, International Business Machines Corp., 1968, Z28-6642-0. Note that BSL was renamed PL/S and replaced by PL/S II 167: 285:
Rand’s interest in PL/S derived from extensive modifications that the Computation Center had made to IBM’s
251: 187: 163: 270:) and was an early pioneer in the definition and development of “packet switching” network technology ( 175: 48: 365: 52: 44: 69: 433: 286: 353: 202:
operating system, and PL/DS II was a port of the S/370 architecture for the DPPX/370 port.
108: 17: 8: 147: 159: 136: 194:
Closed PL/S meant that only IBM could easily modify and enhance the operating system.
128: 267: 258:
Rand has been a long-time contributor to computer research and development (e.g.,
397: 171: 132: 393:
Proceedings of the SIGPLAN symposium on Languages for system implementation 1971
271: 384: 422: 199: 183: 214: 388: 263: 290: 296: 415:, The Rand Corporation, The Rand Computation Center, R-1555/11 1977 279: 275: 179: 143: 232:
compiler generator system by a team of three Rand programmers (
348: 314: 259: 112: 219:
RL/S announcement button distributed by Rand at Share 1976
244: 229: 116: 373:
W.R. Brittenham, "PL/S, Programming Language/Systems",
131:
on internal software projects; it included support for
274:).  Rand was also one of the early nodes on the 333: 301:
PL/S "please" button distributed by Share attendees
142:Early projects using PL/S were the batch utility, 420: 57:but its sources remain unclear because it lacks 278:, the Defense Department’s precursor to the 27:Proprietary IBM systems programming language 391:, "Inferred SYNTAX and SEMANTICS of PL/S", 313:The RL/S compiler was initially written in 377:, GUIDE 34, May 14, 1972, pp. 540–556 226:Rand RL/S compiler for IBM’s PL/S language 209: 88:Learn how and when to remove this message 295: 213: 14: 421: 250:RL/S is fully compatible with IBM’s 29: 24: 119:in the late 1960s, under the name 25: 455: 429:PL/I programming language family 34: 412:RL/S Language Reference Manual 330:internally for many projects. 325:RL/S Language Reference Manual 168:Storage Technology Corporation 13: 1: 444:IBM System/360 mainframe line 439:Systems programming languages 359: 166:(National Advanced Systems), 105:Programming Language/Systems 7: 367:BSL Language Specifications 342: 107:, is a "machine-oriented" 10: 460: 135:and explicit control over 176:Magnuson Computer Systems 127:), as a replacement for 43:This article includes a 72:more precise citations. 334:Fujitsu "Developments" 303: 239:, and the team leader 221: 210:Rand Compiler for PL/S 121:Basic Systems Language 115:. It was developed by 299: 217: 354:High-level assembler 287:MVT operating system 245:MVS operating system 109:programming language 148:Time Sharing Option 401:6(10) October 1971 304: 234:R. Lawrence Clark, 222: 45:list of references 302: 220: 129:assembly language 98: 97: 90: 16:(Redirected from 451: 405:Guide to PL/S II 300: 218: 93: 86: 82: 79: 73: 68:this article by 59:inline citations 38: 37: 30: 21: 459: 458: 454: 453: 452: 450: 449: 448: 419: 418: 398:SIGPLAN Notices 375:Proc GUIDE Intl 362: 345: 336: 237:James S. Reiley 212: 172:Trilogy Systems 133:inline assembly 94: 83: 77: 74: 63: 49:related reading 39: 35: 28: 23: 22: 15: 12: 11: 5: 457: 447: 446: 441: 436: 431: 417: 416: 408: 402: 385:Gio Wiederhold 382: 378: 371: 361: 358: 357: 356: 351: 344: 341: 335: 332: 241:David J. Smith 211: 208: 96: 95: 53:external links 42: 40: 33: 26: 9: 6: 4: 3: 2: 456: 445: 442: 440: 437: 435: 432: 430: 427: 426: 424: 414: 413: 409: 406: 403: 400: 399: 394: 390: 386: 383: 379: 376: 372: 369: 368: 364: 363: 355: 352: 350: 347: 346: 340: 331: 328: 327: 326: 319: 316: 311: 309: 298: 294: 292: 288: 283: 281: 277: 273: 269: 265: 261: 256: 253: 248: 246: 242: 238: 235: 231: 227: 216: 207: 203: 201: 195: 192: 189: 185: 181: 177: 173: 169: 165: 161: 155: 153: 149: 145: 140: 138: 134: 130: 126: 122: 118: 114: 110: 106: 102: 92: 89: 81: 71: 67: 61: 60: 54: 50: 46: 41: 32: 31: 19: 434:IBM software 411: 404: 396: 392: 374: 366: 337: 324: 322: 320: 312: 305: 284: 257: 249: 240: 236: 233: 225: 223: 204: 196: 193: 186:, and other 156: 141: 124: 120: 104: 103:, short for 100: 99: 84: 75: 64:Please help 56: 389:John Ehrman 306:As is well 264:Rand tablet 247:were used. 70:introducing 423:Categories 360:References 308:documented 291:hypervisor 146:, and the 78:April 2010 111:based on 343:See also 280:Internet 137:register 276:Arpanet 252:PL/S II 184:Hitachi 180:Fujitsu 154:, TSO. 144:IEHMOVE 139:usage. 66:improve 268:WYLBUR 262:, the 160:Amdahl 395:, in 349:PL360 272:Baran 51:, or 387:and 315:PL/I 260:JOSS 224:The 200:DPPX 164:Itel 113:PL/I 101:PL/S 18:PL/X 230:XPL 188:PCM 152:MVT 150:of 125:BSL 117:IBM 425:: 282:. 266:, 182:, 178:, 174:, 170:, 162:, 55:, 47:, 123:( 91:) 85:( 80:) 76:( 62:. 20:)

Index

PL/X
list of references
related reading
external links
inline citations
improve
introducing
Learn how and when to remove this message
programming language
PL/I
IBM
assembly language
inline assembly
register
IEHMOVE
Time Sharing Option
MVT
Amdahl
Itel
Storage Technology Corporation
Trilogy Systems
Magnuson Computer Systems
Fujitsu
Hitachi
PCM
DPPX

XPL
MVS operating system
PL/S II

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑