Blog: Template Haskell
![Typed Template Haskell in GHC 9](/files/ew/thumb.ewp2koq3.normal_(23).jpg)
![Typed Template Haskell in GHC 9](/files/l9/thumb.l9s2hnai.mobile_(24).jpg)
Typed Template Haskell in GHC 9
In the third post of our Template Haskell series, we look at the changes made to typed Template Haskell in GHC 9 and show how to use th-compat to write TTH code that will work with both GHC 8 and GHC 9.
![A Short Overview of Typed Template Haskell](/files/vi/thumb.vin3fkdz.normal_(10).jpg)
![A Short Overview of Typed Template Haskell](/files/i6/thumb.i6rrn6vr.mobile_(10).jpg)
A Short Overview of Typed Template Haskell
Extend your Template Haskell knowledge by learning about typed Template Haskell, a part of TH that lets you provide stronger, static guarantees about the correctness of your meta-programs.
![haskell dependency analysis image](/files/qk/thumb.qkd5pv7e.normal_(6).jpg)
![haskell dependency analysis image](/files/0y/thumb.0ya77q7q.mobile_(6).jpg)
Dependency Analysis of Haskell Declarations
Learn how GHC analyzes Haskell code to type-check it in the correct order and what are the flaws of the current implementation.
![template haskell](/files/ol/thumb.oljze3qq.normal.jpg)
![template haskell](/files/rd/thumb.rdnheexl.mobile.jpg)
Introduction to Template Haskell
Get started with Template Haskell, a language extension for compile-time metaprogramming in Haskell.
![compile-time evaluation in haskell thumbnail](/files/x8/thumb.x88ujle4.thumbnail_(39).jpg)
![compile-time evaluation in haskell thumbnail](/files/sq/thumb.sq83tybq.thumbnail-mobile_(23).jpg)
Compile-Time Evaluation in Haskell
In this article, we look at three ways to do compile-time evaluation in Haskell: Template Haskell, type families, and functional dependencies.