Bondage and discipline
Z Wikipedii
Bondage and discipline to w informatyce określenie systemu, w szczególności języka programowania, który usiłuje wymusić styl, który jest uważany przez autora za "dobry". De facto sprowadza się to rozwlekłej składni, niemożliwości wyrażania się w naturalny sposób i ciągłej walki z językiem. Języki takie spotykają się więc zwykle z nienawiścią ze strony tych, którzy próbują używać ich do stworzenia czegoś nietrywialnego.
Często spotyka się argument, że wymuszanie "dobrego stylu" jest dobre do uczenia programowania – jednak opinia ta nie jest poparta jakąkolwiek dokumentacją i w nauczaniu programowania dominują obecnie te same języki od których się oczekuje, że będą wykorzystywane w normalnym programowaniu: C, C++, Java itd.
Typowe przykłady - Pascal (nowsze implementacje są znacznie mniej "bondage and discipline" od starszych), Ada, Eiffel, Python.
Określenie bondage and discipline nawiązuje do subkultury BDSM.