3 ms·
I don't mean to say that category should be the primary focus of the undergraduate curriculum, just that professors shouldn't shy away from using a bit of categ
by benrbray 5y ago
I don't mean to say that category should be the primary focus of the undergraduate curriculum, just that professors shouldn't shy away from using a bit of category theory to elucidate the connections between different subfields of mathematics. Nothing wrong with spending fifteen minutes here and there explaining how something fits into the categorical framework. It's also very useful for identifying what the "meat" of a topic is--which theorems depend only on the categorical structure, and which theorems require deeper insight? This is a useful skill to have.
My main complaint about the math program I attended is that all of my courses felt disjoint -- they could be taken in any order, so we basically had to start over from scratch every semester, rather than allowing the material to compound over four years. I wish course selection had been more rigid.
As for teaching functional programming -- I agree with you learning category theory is not necessary for learning Haskell. But, learning Haskell is an incredibly useful and tangible way of exploring the basic ideas of category theory / type theory. I think it would be a natural addition to any math program, and the earlier students learn it the more mileage they'll get out of it. Most math programs are sorely missing a bit of computer science, anyway.
- dwohnitmok 5y ago> I think it would be a natural addition to any math program, and the earlier students learn it the more mileage they'll get out of it. Most math programs are sorely missing a bit of computer science, anyway. Honestly I don't find arguments that CS should be included in math programs all that convincing. What about any of the other sister fields to mathematics such as statistics or physics? I find parts of them equally compelling if not more so than CS to round out a mathematical education, but of course you quickly run out of space and time to actually include them. The crucial differentiator is that they "feel different" than normal mathematics work. I have a different set of intuitions when I'm programming in Haskell vs doing a stats problem vs doing physics. They are all deeply informed by mathematics and ultimately based on mathematics, but in each case when push comes to shove it's mathematical rigor that first goes out the window and then is hopefully later recovered rather than the other way around. I've also never found type theory to be something useful to include at the undergraduate math level. In general, foundations of mathematics stuff is something that I think is very useful for a specific subset of undergrads who are very interested in seeing how the rigor "goes through all the way" so to speak, but for most undergrads is probably neither interesting nor useful for their future mathematical endeavors. Mathematics at large is not all that sensitive to your choice of foundations. E.g. model theory is great! Set theory is fantastic! I have a hard time justifying their inclusion alongside the traditional three pillars of algebra, analysis, and geometry, however.
- benrbray 5y agoFor one, I think it is irresponsible to leave math graduates so woefully unprepared to enter the workforce. There are not enough PhD slots for everyone to attend graduate school, nor should they. Math students can be very effective in the workforce with some practical programming experience under their belt. There are pedagogical reasons too. Programming has been an endless soure of applications and motivation to learn and explore math, especially computer graphics and FP. Many math students are naturally curious and explore on their own anyway, but of course a good instructor can accelerate the learning process.