4 ms·
The former was chose to make a point, but I contest the fact that Monoid is extremely abstract. It's very concrete, it effectively describes an interface and if
by freyrs3 13y ago
The former was chose to make a point, but I contest the fact that Monoid is extremely abstract. It's very concrete, it effectively describes an interface and if implemented according to certain laws it is a Monoid just like a Container or Iterator. The name has existed for nearly a hundred years in mathematics, it relates very obviously to any data structure that is a monoid.
- Pacabel 13y agoPerhaps the problem is that there's no good real-world equivalent of a "monoid" that basically everybody is familiar with. Most people are inherently familiar with the concept of a "container", in the sense of something that holds other things, regardless of whether it's a physical container or a data structure. "Iterator" might not be as clear as "container", but at least most people are familiar with the concept of doing something repeatedly, whether it's some physical action or executing some chunk of source code. "Monoid" just isn't like that. It may be concrete when constrained to the context of mathematics or programming, but it's quite meaningless outside of those very specific contexts.
- voyou 13y ago"the problem is that there's no good real-world equivalent of a "monoid" that basically everybody is familiar with." But that isn't really true. Addition and multiplication are both real-world examples of monoids that everyone is familiar with (obviously, these aren't physical things, but I don't see why that's relevant).
- voyou 13y agoJust realised I may have missed your point; anyway, you're right that "monoid" is harder to find an easily-understood counterpart for than "container". There are examples of monoids which everyone is probably familiar with, but we don't usually abstract from those everyday examples; whereas as well as there being everyday examples of containers (boxes, bags), we are familiar with abstracting away from those examples in everyday life to come up with the general concept of container.