Sunday, June 23, 2019

The False Hope of Managing Effects With Tagless-Final in Scala (Part 3)

Tagless-final is a technique originally used to embed domain-specific languages into a host language, without the use of Generalized Algebraic Data Types.

In the Haskell community, tagless-final still refers to a way of creating polymorphic programs in a custom DSL that are interpreted by instantiating them to a concrete data type. In the Scala community, however, tagless-final is used almost exclusively for monadic, effectful DSLs. Usage of the term in Scala is closest to what Haskeller’s mean by MTL-style, but without the algebraic laws that govern MTL type classes.



from DZone.com Feed http://bit.ly/2IAtYYV

No comments:

Post a Comment