Material for PHASE Tagless Final Talk
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
src
.gitignore
README.md
pom.xml

README.md

tagless-talk

This is the material used for my PHASE talk on tagless final. I added a few comments to the files that I didn't present.

src/Talk.scala - File created during the first part of the talk, goes over constructing the tagless final pattern.
src/Talk2.scala - File created during the second part of the talk, applies tagless final as an alternative to the free monad.

src/Addl/Help.scala - Contains the boolean expression language from the middle of the talk.

src/done/Done.scala - First part of the talk, finished beforehand.
src/done/Done2.scala - Second part of the talk, finished beforehand.
src/done/Done3.scala - Implemented an example of using an interpreter to convert the structure of a tagless final program.
src/done/Done4.scala - A different solution for structural conversion that leaves the interpretation more flexible. (see comments)

References

Finally Tagless, Partially Evaluated:
Tagless Staged Interpreters for Simpler Typed Languages
http://okmij.org/ftp/tagless-final/

Please send question, corrections, ideas, solutions, etc. to:
Me: Dan Hunt
Email: dfjhunt@gmail.com
LinkedIn: linkedin.com/in/daniel-hunt-4825395a