The Programmer's Workbench (PWB/UNIX) was an early Unix operating system developed at Bell Labs within AT&T to provide a time-sharing environment for large programming teams. Initiated in 1973 by Evan Ivie and Rudd Canaday, it supported source code management and collaboration on PDP-11 Unix systems, while enabling job submissions to systems like IBM System/370 and UNIVAC 1100 series. Two key releases were PWB/UNIX 1.0 based on Version 6 Unix and PWB 2.0 based on Version 7 Unix. Most innovations from PWB were later integrated into commercial UNIX System III and UNIX System V releases, but PWB itself was eventually discontinued.
Features
Notable firsts in PWB include:
- The Source Code Control System, the first UNIX revision control system, written by Marc J. Rochkind
- The remote job entry batch-submission system
- The PWB shell, written by John R. Mashey, which preceded Steve Bourne's Bourne shell
- The restricted shell (rsh), an option of the PWB shell, used to create widely-available logins for status-checking, trouble-reporting, but made safe by restricting commands
- The troff -mm (memorandum) macro package, written by John R. Mashey and Dale W. Smith
- Utilities like find, cpio, expr, all three written by Dick Haight, xargs, egrep and fgrep
- yacc and lex, which, though not written specifically for PWB, were available outside of Bell Labs for the first time in the PWB distribution
See also
- Research Unix
- Writer's Workbench ("WWB")
External links
- Ivie, Evan L. (October 1977), "The Programmer's Workbench — A Machine for Software Development", Communications of the ACM, 20 (10), CACM: 746–753, doi:10.1145/359842.359856, S2CID 17647129
- Unix ad mentioning PWB, from a 1981 issue of Datamation (on Dennis Ritchie's homepage)
- PWB distributions, from the Ancient UNIX Archive
References
T.A. Dolotta; J.R. Mashey (1976). An introduction to the Programmer's Workbench. Proc. 2nd Int'l Conf. on Software Engineering. pp. 164–168. ↩
John R. Mashey (2004). Languages, Levels, Libraries, and Longevity Archived 2009-04-30 at the Wayback Machine. ACM Queue 2 (9). http://queue.acm.org/detail.cfm?id=1039532 ↩
T.A. Dolotta; R.C. Haight; J.R. Mashey (1978), "Unix Time-Sharing System: The Programmer's Workbench" (PDF), Bell System Tech. J., 57 (6): 2177–2200, doi:10.1002/j.1538-7305.1978.tb02148.x, S2CID 21869088, archived from the original (PDF) on 2022-10-09, retrieved 2012-12-14 https://ghostarchive.org/archive/20221009/http://www.alcatel-lucent.com/bstj/vol57-1978/articles/bstj57-6-2177.pdf ↩
Fiedler, Ryan (October 1983). "The Unix Tutorial / Part 3: Unix in the Microcomputer Marketplace". BYTE. p. 132. Retrieved 30 January 2015. https://archive.org/stream/byte-magazine-1983-10/1983_10_BYTE_08-10_UNIX#page/n133/mode/2up ↩
T.A. Dolotta; R.C. Haight; J.R. Mashey (1978), "Unix Time-Sharing System: The Programmer's Workbench" (PDF), Bell System Tech. J., 57 (6): 2177–2200, doi:10.1002/j.1538-7305.1978.tb02148.x, S2CID 21869088, archived from the original (PDF) on 2022-10-09, retrieved 2012-12-14 https://ghostarchive.org/archive/20221009/http://www.alcatel-lucent.com/bstj/vol57-1978/articles/bstj57-6-2177.pdf ↩
Fiedler, Ryan (October 1983). "The Unix Tutorial / Part 3: Unix in the Microcomputer Marketplace". BYTE. p. 132. Retrieved 30 January 2015. https://archive.org/stream/byte-magazine-1983-10/1983_10_BYTE_08-10_UNIX#page/n133/mode/2up ↩
Dennis M. Ritchie. "Unix Advertising". former Bell Labs Computing and Mathematical Sciences Research. Archived from the original on 2 January 2013. Retrieved 17 February 2014. https://archive.today/20130102004255/http://cm.bell-labs.com/cm/cs/who/dmr/unixad.html ↩
"Software List for UNIX System V" (PDF). 1 September 1983. Archived (PDF) from the original on 11 June 2015. Retrieved 27 April 2014. https://www.bell-labs.com/usr/dmr/www/licenses/acprice83.pdf ↩