Technically yes, but thousands of programs were written in them. I can only say that I wasn't the only one who didn't like it (and I had every reason to love it as even at home I had a fully equipped GodBout/CompuPro dual proc 8085/86 S100 system running CP/M and CP/M86 which was pretty much the king of CP/M systems. (Incidentally, I used to edit the HMXBIOS assembler code for that in WordStar in non document mode. For me it was a dream to used compared with. ED.
Even my resident assembler guru who considered any high level language you'd name too wasteful of CPU cycles, would send a file from a serial port on the CP/M machine to his Intel development system and edit it there then send it back again rather than using ED.
I've seen this dichotomy many times amongst programmers and I've come to the conclusion that it has to do with the ergonomics of the way people think and work.
However, lately I've been thinking of writing a modal editor for Linux based on CP/M's ED. I know there is ED and EX on Linux but I prefer ED on CP/M and have been wondering where I could take that idea and possibly replace some of my use of VIM.
MNCPM^Z0TT6Z-3DICP/M^Z
This will go through a file bigger than memory, display each line containing 'CPM', pause and then replace it with 'CP/M'.However, there are things I like in ED/EX such as the regular expressions.
Despite my earlier criticism of ED, I've always liked CP/M's command line structure and switch parameters. For example, here's one I think I remember: PIP B:=A: [V O] (I hope that's right, it's been a long time.)
I wonder if that elogence is Kildall's work, as I've never been sure whether GK just took the PDP/DEC command stuff verbatim or whether he altered some items.