--- title: "Programming Languages" type: "article" slug: "programming-languages" url: "http://localhost/article/programming-languages/" markdown_url: "http://localhost/article/programming-languages.md" published_at: "2026-11-11T11:06:59+00:00" modified_at: "2026-11-11T11:06:59+00:00" featured_image: url: "http://localhost/wp-content/uploads/2022/04/20230809-041332.jpg" excerpt: "A short survey of programming languages by W. Harmer, first published in the Ottawa-Hull user group's TS Bulletin and translated and adapted by QL_DOC. It explains why computers are not programmed in plain English and sketches FORTRAN, COBOL, BASIC, Pascal, C (after A and B/BCPL), Modula-2, LISP and Prolog, Ada, Forth, PL/1 and APL, ending with application languages such as dBase and Lotus 1-2-3 and their QL equivalents Archive and Abacus." post_tag: - name: "APL (programming language)" slug: "apl-programming-language" taxonomy: "post_tag" url: "http://localhost/tag/apl-programming-language/" - name: "BASIC (programming language)" slug: "basic-programming-language" taxonomy: "post_tag" url: "http://localhost/tag/basic-programming-language/" - name: "C (programming language)" slug: "c-programming-language" taxonomy: "post_tag" url: "http://localhost/tag/c-programming-language/" - name: "Forth (programming language)" slug: "forth" taxonomy: "post_tag" url: "http://localhost/tag/forth/" - name: "French language" slug: "french-language" taxonomy: "post_tag" url: "http://localhost/tag/french-language/" - name: "LISP (programming language)" slug: "lisp-programming-language" taxonomy: "post_tag" url: "http://localhost/tag/lisp-programming-language/" - name: "Pascal (programming language)" slug: "pascal" taxonomy: "post_tag" url: "http://localhost/tag/pascal/" - name: "Prolog (programming language)" slug: "prolog" taxonomy: "post_tag" url: "http://localhost/tag/prolog/" - name: "QL" slug: "ql" taxonomy: "post_tag" url: "http://localhost/tag/ql/" model: - name: "Sinclair QL" slug: "sinclair-ql" taxonomy: "model" url: "http://localhost/model/sinclair-ql/" indiv: - name: "Bill Harmer" slug: "bill-harmer" taxonomy: "indiv" url: "http://localhost/indiv/bill-harmer/" genre: - name: "Programming" slug: "programming" taxonomy: "genre" url: "http://localhost/type/programming/" publication: "QL_DOC" publication_r: id: 52925 title: "QL_DOC" type: "periodical" url: "http://localhost/periodical/ql_doc/" authors: "W. Harmer" issue: "13" issues_articles: - id: 76730 title: "QL_DOC n13" type: "issue" url: "http://localhost/issue/ql_doc-n13/" pages: "7-8" pubdate: "December 1989-January 1990" archive_link: false volumeissue: "n13" --- # Programming Languages **In English:** A short survey of programming languages by [W. Harmer](http://localhost/indiv/bill-harmer/), first published in the [Ottawa-Hull user group](http://localhost/usergroup/ottawa-hull-timex-sinclair-user-group/)'s [TS Bulletin](http://localhost/periodical/ts-bulletin/) and translated and adapted by QL_DOC. It explains why computers are not programmed in plain English and sketches FORTRAN, COBOL, BASIC, Pascal, C (after A and B/BCPL), Modula-2, LISP and Prolog, Ada, Forth, PL/1 and APL, ending with application languages such as dBase and Lotus 1-2-3 and their QL equivalents Archive and Abacus. *Printed title: LANGAGES. The article below is in French, as printed in QL_DOC n13 (December 1989-January 1990).* *** de W. Harmer, publié dans TS BULLETIN OTTAWA-HULL UG traduction et adaptation de QL_DOC Nous pouvons nous demander, “Pourquoi ne pouvons-nous pas communiquer avec un ordinateur simplement en anglais (ou en français) et utiliser celui-çi comme langage informatique?”. Les premiers ordinateurs n’avaient ni la vitesse ni la mémoire pour analyser une phrase en anglais et encore moins fournir un simple réponse à une question. Au début, les langages informatiques étaient juste capables de manipuler quelques formules mathématiques et fournir des réponses à des équations scientifiques qui auraient nécessité de longues heures de programmation en langage machine. Le langage FORTRAN (FORmula TRANslation), inventé par J. Backus de IBM dans le milieu des années 50, réalisait très bien cette fonction et est encore utilisé aujourd’hui par les ingénieurs et scientifiques. Plus tard, le monde des affaires était de plus en plus envahis par les minis ordinateurs IBM et une autre tentative de produire un langage plus facile fut faite avec l’introduction du langage COBOL (COMmon Business Oriented Language). Quoique spécifiquement créé pour l’administration et la comptabilité, COBOL se voulait un langage d’usage général. Avec une popularité grandissante, de nouveaux langages firent leur apparition pour faciliter l’enseignement de l’informatique à l’université. De ce groupe, on remarque le BASIC (Beginner’s All-purpose Symbolic Instruction Code) et le Pascal (nommé ainsi d’après le mathématicien-philosophe français Blaise Pascal). Ces deux langages ont trouvé plusieurs applications à l’extérieur de l’enseignement laissant ainsi dans l’oubli leur origine pédagogique. Les tentatives de créer des langages produisant des programmes plus rapide d’exécution nous ont donné le langage C. Ce nom plutôt bizarre nous rappelle que le “C” est le résultat de 2 tentatives précédentes qui ont donné le langage “A” et le “B” (appelé aussi BCPL). Le créateur du Pascal, le Professeur Nicholas Wirth propose maintenant un langage appelé Modula (en fait Modula-2 est la dernière version de ce langage). Modula combine la vitesse d’exécution du C mais est plus facile à maitriser. L’intelligence artificielle est une caractéristique du langage LISP (LISt Processing) et du PROLOG. Séduisante au début des années 80, l’intelligence artificielle excite beaucoup moins de monde aujourd’hui. A un moment donné, l’armée américaine décide de standardiser les langages de programmation de tous ses systèmes informatiques. Pour ce faire un nouveau langage sera créé et il aura pour nom ADA. FORTH se voulait être le langage de la 4ième génération mais il n’a jamais vraiment décollé peut-être à cause de la notation polonaise inversée… PL/1 (Programming Language) est utilisé quelque fois sur les minis ordinateurs, il ressemble au BASIC mais en plus compliqué. APL (A Programming Language) est surtout utilisé pour traiter de larges matrices de chiffres mais est très bizarre car il utilise des symboles et non pas des lettres et demande l’utilisation de claviers spéciaux. La tendance d’aujourd’hui est dans l’utilisation de langage spécifique à une application ou bien un logiciel qui offre son propre langage de programmation. Prenons par exemple, DBASE pour les base de données et LOTUS 123 pour les tableurs dans le monde MS-DOS (les équivalents QLiens sont ARCHIVE et ABACUS).