4 ms·
Yes, I know that as a mathematician. Imagine you are a military strategist. And some engineer says, you know what all our tanks, rifles, and missiles have in
by dkural 9y ago
Yes, I know that as a mathematician. Imagine you are a military strategist. And some engineer says, you know what all our tanks, rifles, and missiles have in common? They are all WEAPONS satisfying a few simple formal properties!
- coldtea 9y agoWell, the military has its own share of "simplistic" abstractions exactly like that, that are nonetheless extremely useful to its operations.
- mcphage 9y agoGood ol' "Rock or something"
- jpfed 9y agoAnd then you start wondering whether there are other kinds of weapons you could be exploring, and hey, turns out that's pretty useful.
- KirinDave 9y agoIf there was a natural isomorphism between rifles and panzer tanks you can imagine it'd have pretty big implications for both manufacturing and the common foot solder's field tactics.
- jkaptur 9y agoYour sarcasm is noted (and pretty funny), but you should know that there are military theorists who are taken seriously despite being superficially silly. For example, an Army field manual [1]: "Any use of force generates a series of reactions." Like, duh, right? But if you read on, the manual makes a highly cogent, precise point (one that's especially relevant to a military that all-too-recently used "body count" as a success metric). "There will be times when an overwhelming effort is necessary to destroy or intimidate an opponent and reassure the populace. However, counterinsurgency forces should calculate carefully the type and amount of force to be applied and who wields it for any operation." If you fail to generalize from tanks, rifles, missiles, etc. to "force", it's a lot harder to think about how to apply force to get the outcome that you want. The same is true of programming. For small programs, you don't need abstractions or patterns. But if you want to build large, resilient, performant systems, you'll need formal definitions for those terms, and formal definitions of components you can use to build them, and so on. Re-reading, it sounds like you're saying that the concept of a monoid isn't useful by itself, and I guess that's fair. But I didn't know anything about them before, and now that I read this article I do. I've got a long way to go! [1] https://fas.org/irp/doddir/army/fm3-24.pdf https://fas.org/irp/doddir/army/fm3-24.pdf
- dkural 9y agowhat a refreshing reply - good point & I agree with you. For certain questions, it helps to think in this fashion, and to make non-obvious points that might be lost in details otherwise. I have nothing against formal systems in computing, programming language research, or other forms theoretical CS. In support of this, in mathematics, Grothendieck took an exceedingly abstract perspective, eventually leading to the solution of some outstanding conjectures of the time. While I haven't articulated this particularly well in my original comment, what I despair is the singular obsession with Monoids. It is popular because it is easy for people to wrap their minds around, they convince themselves that they've learned deep math and Something Very Important(tm), and it has a cool sounding name. It's like you've given someone a book about the origins of the French Revolution and because they've heard the word "french", keep repeating "but the Eiffel Tower though amirite?" and keep writing blog posts and articles about the Eiffel Tower and nothing else. In some ways I suppose my criticism is unfair and has an elitist / snobby vibe to it. It is common for people to find some 'sexy' hooks to initially get attracted to an area, and one shouldn't judge too much newbies. After all no one is forcing me to hang out at forums :)