Within programming, you have contracts, i.e. function definitions. This is taken by the non-tech people, blew up and got the attention of all people have 1) no idea how code works, 2) have no idea how the law works.
While great for spreading the word, it also spread the WRONG word. This is one of the reasons why "nobody understands blockchain". It's because the communication is plain wrong.