A PL/1 foi desenvolvida pela IBM como uma linguagem universal para aplicações científicas e comerciais, visando unificar linguagens separadas até então. Sua concepção ocorreu na década de 1960 e permitia recursos como tarefas concorrentes, manipulação de erros e uso de ponteiros. No entanto, sua complexidade fez com que Dijkstra criticasse seu estilo "barroco" que escapava do controle intelectual.