sans vouloir entrer dans les détail, et même si je suis d´accord avec toi, il y a une erreur de logique dans ton raisonnement yoda :
Soit A et B deux événements
A entraine B N´est PAS équivalent à non A entraine non B.
En d´autre mot, si tous les langages qui possèdent l´instruction if sont des langages de programmation, comme tu le dit. Tu ne dit pas pour autant qu´un langage qui ne possède pas cette instruction n´est pas un langage de programmation.
Donc, si ce que tu dit est vrai, et est aussi vrai pour le HTML, j´ai quand même un contre exemple : il n´y a pas à ma connaissance de test en lambda calcul ( c´est à dire, pas de test inhérent au langage, mais ce n´est pas une contreinte), langage qui est quand même le langage fondamentale pour tous les langages fonctionnels. d´ailleurs, un langage n´est un langage fonctionnels ( donc à base de fonctions) que si on peut le réduire en lambda calcul ( tiens, une définition de langage en passant).