La tua affermazione forse non tiene conto dei parametri giusti per la definizione di "linguaggio"...
perché non dovrebbe essere un linguagio il Visual Basic ad esempio? Quali strutture gli mancano .. ? .. i costrutti base ci sono tutti, ciò che forse ti trae in inganno è il "livello", cioè VB ad esempio è a livello molto più alto rispetto a C / C++ ed è inoltre programmato secondo questi linguaggi .. ciò però non significa che esso stesso non sia un linguaggio; e così anche per Basic, Javascript VB.NET e Cobol.
Gli altri che hai citato sono anch'essi linguggi (lisp, perl, c/c++, python ecc.) ognuno a differente livello rispetto all'altro.
HTML e XML non sono da considerarsi linguaggi di programmazione.
Bye