@@ 1,6 1,6 @@
# Understanding Turnstile
-Turnstile is a system for developing typed DSLs using macros in [Racket](https://racket-lang.org), and was introduced in the paper *Type Systems as Macros*. [<a href="#citeproc_bib_item_1">1</a>] It's a fascinating idea, but the paper is a little difficult to follow. This repository implements the basics of a type system with macros using straight-forward Racket, and takes up only 68 lines in a single file. (`stlc.rkt`)
+Turnstile is a system for developing typed DSLs using macros in [Racket](https://racket-lang.org), and was introduced in the paper *Type Systems as Macros*. [1] It's a fascinating idea, but the paper is a little difficult to follow. This repository implements the basics of a type system with macros using straight-forward Racket, and takes up only 68 lines in a single file. (`stlc.rkt`)
I have a write-up about this [on my blog](https://lambdaland.org/posts/2023-08-14_types_with_macros/), which I recommend reading if you're new to this.
@@ 14,9 14,4 @@ MIT.
## References
-<style>.csl-left-margin{float: left; padding-right: 0em;}
- .csl-right-inline{margin: 0 0 0 1em;}</style><div class="csl-bib-body">
- <div class="csl-entry"><a id="citeproc_bib_item_1"></a>
- <div class="csl-left-margin">[1]</div><div class="csl-right-inline">Chang, S., Knauth, A. and Greenman, B. 2017. <a href="https://doi.org/10.1145/3009837.3009886">Type systems as macros</a>. <i>Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages - POPL 2017</i> (Paris, France, 2017), 694–705.</div>
- </div>
-</div>
+- [1] Chang, S., Knauth, A. and Greenman, B. 2017. <a href="https://doi.org/10.1145/3009837.3009886">Type systems as macros</a>. <i>Proceedings of the 44th ACM SIGPLAN Symposium on Principles of Programming Languages - POPL 2017</i> (Paris, France, 2017), 694–705.