• I came across and learnt (whether well enough to evaluate as a language or well enough to atually use for real) a lot of languages over the years. Here is a list of most of them (but not all - there are quite a few I've forgotten everything about, even their names) in roughly the order in which I met them. I'm now probably unable to write most of the languages on this list because I've forgtten too much, but I have discovered that I can pick some languages up rather quickly although I thought I'd completely lost them.

    Fortran II
    FaLan (Orion II MacroAssembler supporting OFMP)
    IBM 1620 Assembler
    Algol 60
    System 4 Assembler
    IBM 360 Assembler (keeping that and system 4 apart was the difficult part of writing either - different names for the same instructions).
    Fortran IV
    Coral 66
    Mini-Coral
    Marconi Myriad Assembler
    Deuce Alphcode
    ----- the next group of languages is ones that I learnt because I was required to carry out a survey of available languages and suggest how they might or might not fit in with EngElec/NRL objectives; mostly I didn't do any real programming with them at the time (the ones I did do real work with either then or later are marked *). This was in the good old days when computer guys working all over the place were brothers,so I got lots of help from our commercial competitors' (eg IBM) people and they got help from us. Things appear to have changed now, sadly.
    Agol 58
    Atlas Autocode
    COBOL
    SIMULA
    Jovial
    KAlgol *
    WAlgol
    PL1
    CPL
    BCPL
    SNOBOL
    Lisp *
    APL
    BASIC
    CORAL *
    EULER
    MAD
    MAD/I
    P
    PL360
    PPL (Polymorphic, not Python)
    RPG
    ------- back now to languages that I learnt because I had to use them (or invented and got implemented because I needed them)
    PLAN (1900 series assembly language)
    ASS3 (CTL Modular 1 assembly language)
    NAL (I invented NAL as a replacement for ASS3)
    S3 (an Algol 68 dialect used by ICL)
    SHUFL_IP (originally a definition of what the SHUFFL configuration definition app for ICL 7904/7905/7906 series processors would handle as input)
    ALPHA (Codd's 1st order relational logic based relational calculus, which IBM killed, having let the politicians defeat the scientists so that we became stuck with SQL - a nice language, worth learning to help understad relational agebra, but never actually implemented)
    Pascal
    Assorted Intel and Motorola assemblers (ongoing for decades, as the order codes kept on changing)
    Intercal (THE language in which to write absurd-looking code delivering absurdly bad performance; or perhaps slightly better-looking code with even worse performance)
    SCL (various)
    C
    Prolog
    Parlog
    2900 Series order code / mini-assembler
    Modula
    ML (several versions)
    HTML
    CCS
    CSP
    PSAlgol
    Smalltalk
    OCCAM
    SCCS
    ACCS
    SQL(IBM's substitute for the data handling part of ALPHA)
    PL/SQL (yes, Oracle, I am indeed guilty of having collaborated with those guys)
    QUEL (Ingres - the closest thing that has yet happened to an implementation of ALPHA) and POSTQUEL (Postgres)
    C++
    SASL
    KRC
    MIRANDA
    Java
    HOPE (Edinburgh U. functional language, the predecessor of HOPE+)
    HOPE+ (my definition of an improved version of HOPE that would allow us to use it to write an OS - compiler implemented by Imperial College London and the language is now called HOPE, the original HOPE being superceded by this version).
    pi-calculus
    Haskell (you'll find my name amongst many others on the first release of the Haskell report, but in my opinion I didn't deserve to have it there).
    Erlang
    Dylan
    JavaScript
    JScript
    VBS (the language I most hated - a close challenge to Intercal)
    Brainfuck

    Tom