3 ms·
This is true of any sufficiently advanced ecosystem. You're going to develop your own lexicon based on the historical advancement of your field. In our field, f
by iheartmemcache 11y ago
This is true of any sufficiently advanced ecosystem. You're going to develop your own lexicon based on the historical advancement of your field. In our field, functor can mean at least 3 different things[1], which I argue is even worse, because without sufficient context you could make a false presumption. (Granted in mathematics, greek-letters are polymorphic, the polymorphism tends to be isolated in between branches).
Computer science has only had about 50 years to develop - we may have seen our Issac Newtons and Leibniz's but once we have 200 years of Gausses and Riemann's there'll be a lot of additional abstraction that's implicit depending on which subset of study you choose. CS will fork off into various subsets just like any other formal science, and a greek symbol to someone who finished their PhD in complex analysis might mean something entirely different to someone who's been working specifically in combinatorics for 30 years. At that point, our level of abstraction won't be pieces of paper on a stack.
It's not exclusive to CS or mathematics, ask someone who hasn't taken O-chem what "R" means in a Lewis Diagram. Ask a non-linguistic (of either type (ugh pun not intended)) what a 'terminal symbol' is. I'm sure they'll answer differently from someone who works at the airport, that's for sure.
[1] http://www.catonmat.net/blog/on-functors/ http://www.catonmat.net/blog/on-functors/
- catnaroek 11y agoThe ML module language, as well as the scientific literature on it, consistently uses analogies from category theory. For instance, mappings between signatures (viewed as categories whose objects are structures) are called “functors”. Also, the act of making a signature less abstract by specifying one of its abstract type components is called (parameterization by) “fibration”. This analogy has some merit. For instance, the technique of structural abstraction shown in section 10.2 of Okasaki's book “Purely Functional Data Structures” can be viewed as defining monads - in categories other than Hask (or Scal or whatever)! The analogy isn't 100% precise, though: If structures with the same signature (and perhaps equational laws) form the objects of a category, then what exactly are the morphisms? There are several possibilities. My favorite one is pre-ordering structures by the asymptotic complexity of their operations. (Every preorder can be viewed as a thin category.)