Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think that your last point is a worthy tie-in to the developer's world.

For example, for those who use C# or Java regularly: groups, Abelian groups, and integers under addition are roughly analogous to the Enumerable interface, the List interface, and the ArrayList class.

Obviously they serve different purposes, but their role in their respective professions is approximately the same. Groups appear all over the place in math, and the Enumerable interface is baked right into the for(each) loop. Abelian groups add commutativity to general groups, and the List interface adds indexing and insertion to Enumerables. Meanwhile integers/ArrayLists are basically the go-to concrete implementation that mathematicians/programmers default to when it comes to Abelian groups/lists.



yeah, that's very true.

That analogy works excellently until you consider the implementation of these things, and then its a complete mess because there are side effects all over the place, except in languages like haskell.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: