This makes sense to me, and provides a good explanation for why I mix up the terms.
So usual parlance is reify brings stuff back down/ reflect bounces it up? On Fri, Apr 23, 2021 at 2:16 AM Spiwack, Arnaud <arnaud.spiw...@tweag.io> wrote: > While I do value consistency, let me pet-peeve for a minute here (sorry in > advance Edward for the rant). The word “reify” comes from the latin “res”, > which means object/thing. It should always mean something along the line of > “making more concrete”. In normalisation by evaluation, for instance, you > reify a semantic value as syntax (an object of the language of study), and > you reflect values of the language into the semantic domain. > > To me, the reflection library uses the terms inconsistently. For instance > you have the type ReifiedMonoid for the concrete type representing a > monoid instance. This is, in my opinion, the right terminology. However, a > ReifiedMonoid should be the product of reification, but in the reflection > library it actually gets reify-d further. This doesn’t seem to work at > the grammar level. I contend that the function should have been reflect > all along: you reflect a concrete dictionary object into the nebulous, > untouchable world of type class instances. > > It’s probably too late to fix the reflection library, hence me never > complaining about it (in public :-) ). But I vote we don’t perpetuate this > situation, and still call the function reflectDict. > _______________________________________________ > ghc-devs mailing list > ghc-devs@haskell.org > http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs >
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs