Talk:PL/M

Isis workstation pgph
The bottom section here seem irrelevent. I don't know enough about Iris workstations to understand what it is doing here. --Anonymous — Preceding unsigned comment added by 24.179.18.96 (talk) 21:45, 30 November 2005 (UTC)


 * I removed the section for the time being; the contributor needs to give a context* in order for those machines to be mentioned in this article. . --Wernher 23:10, 30 November 2005 (UTC)


 * (* it seems Intel wrote the ISIS OS and a Pascal compiler in PL/M )

4004?
I don't recall ever seeing any reference to PL/M for the 4004.


 * According to Fire in the Valley, p.xiv, Kildall implemented PL/M for the 4004 sometime during the fall of 1972. As of yet I haven't found any more sources for this. --Wernher 19:25, 11 December 2005 (UTC)


 * According to Intel's PL/M programming guide, "PL/M is a new high level programming language designed specifically for Intel's 8 bit microcomputers" with "data types and primitive operations which reflect the architecture of the MCS-8 CPU." This contradicts the "Fire in the Valley" history. I looked, but I haven't been able to find any evidence that PL/M ran on the 4004 so I'm removing the 4004 from the list of supported processors. KenShirriff (talk) 04:51, 24 March 2015 (UTC)


 * In his memoir, Kildall also doesn't mention a PL/M for 4004 (only for 8008 and 8080). Also, he stated 1973, not 1972. --Matthiaspaul (talk) 01:06, 23 November 2016 (UTC)
 * Agree with this; it's disappointing to see that the third edition of Fire in the Valley (2014) still gets this wrong. What Kildall did write for the 4004 in 1972, was a 4004 simulator that ran on an IBM 370, and trigonometric functions that he checked and debugged using the simulator, which he traded to Intel for a $1000 SIM4-01 development system. Kildall credits Tom Pittman, who later wrote Tiny-C (Tiny BASIC), as "the first personal computer developer and user". Kildall says Pittman wrote a 256-byte "monitor" and a small assembler that actually ran on the SIM4-01 itself. All 4004 coding was done in assembly or machine language. There was no high-level language for the 4004. – wbm1058 (talk) 18:10, 5 November 2017 (UTC)
 * I also agree, Gary wrote PL/M to be use to generate code for the 8 bit computers. When ISIS was developed, PL/M was ported to ISIS ( 8080 ). Gary did a number of projects with his students at the Naval PGS in Monterey. There are three papers that were in the library for 4004. His students also did 8008 and 8080 projects. — Preceding unsigned comment added by 2601:646:8281:6020:20C4:5918:EF7D:7723 (talk) 23:31, 10 September 2020 (UTC)

C input/output?
C doesn't have any input/output builtin, same as PL/M. All I/O is done via additional libraries. Good examples for languages with builtin I/O: Fortran, Algol, Pascal, BASIC, PL/1 Udo Munk


 * I/O is with library calls, but the C library is defined along with the language. Gah4 (talk) 20:29, 29 June 2018 (UTC)

PL/M on CP/M?
There never was a native PL/M implementation for CP/M, even Digital Research used the ISIS PL/M compiler running under an ISIS emulator under CP/M or the cross compiler written in Fortran. Udo Munk —Preceding unsigned comment added by 84.134.245.109 (talk) 12:58, 23 September 2007 (UTC)

Sample source
I added a small sample of PL/M source from CP/M-2.2 Ed because I thought it would be useful. I was looking for a relatively small procedure that would be representative of PL/M code. Your feedback on the usefulness of this is sought. Peter Flass (talk) 00:12, 18 September 2010 (UTC)


 * This section's relevance can be improved by stating what it does (A simple string recognition program, apparently), the method employed (a byte by byte comparison), and how it gets its comparison items (preexisting strings?). As of this edit, it is difficult to tell what the program is doing and how it is relevant to the article beyond the titular.  With that information however, it could be extremely helpful to the article.
 * Also upon looking at a 99 Bottles of Beer program written in the language (The only other program I could find in PL/M at http://www.99-bottles-of-beer.net/language-pl-m-80-549.html), this one seems incomplete. My guess is that it was part of a larger program example.  Speaking of the book, has the author of it allowed the free use of the source code?  That could complicate the situation.  Just trying to helpCatzilla4 (talk) 07:42, 10 July 2014 (UTC)

Sample source, style
I've used PL/I and PL/C, but not PL/M. Is there a particular reason that the sample code is written in all capital letters ? I know that IBM established a style of using all-caps in mainframe programming languages simply because IBM mainframes through the 7090 series used a six-bit character code which only included capital letters, but PL/M was presumably written for (ASCII-capable) microcomputers, and should have no such limit. Unician &nabla; 11:42, 10 July 2014 (UTC)


 * If memory serves me right (it is 25 years since I last PL/M'd), the language was case insensitive and upper case was used by convention WhaleyTim (talk) 11:07, 11 July 2014 (UTC)

Commercial links
There are 3 links to commercial products in the External links section. These have been there for 10 years (added by a long gone user) and maybe the time has come to review if they are still relevant to the article.

'www.ristancase.com' 'www.plm2c.com' 'www.xtran-llc.com' Mtpaley (talk) 01:22, 29 October 2016 (UTC)
 * I did a quick review and cleanup. --Ronz (talk) 16:07, 8 August 2018 (UTC)

Not so high level
Is PL/M really a high-level language? I was considering it closer to the hardware than usual for high-level languages, but maybe not. Not having any I/O defined seems to indicate not. I thought maybe more like PL/360, though not quite as machine dependent. Gah4 (talk) 20:33, 29 June 2018 (UTC)
 * This is an old post, but: its influence ALGOL was considered high-level, PL/M has procedure and argument passing/handling support (the programmer doesn't have to explicitly handle register allocation/save/restore or stack entries), there is structured control flow, including loops. It seems to fit the general description and is also mentioned by sources like .  Peculiar is the semicolon statement terminator, rare in verbose languages using END, it presumably simplified parsing...  — Paleo  Neonate  – 11:36, 11 February 2022 (UTC)