Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rewriting Macros on the Fly

This archive contains the original Racket source code to accompany the paper "Rewriting Macros on the Fly". Each section of the paper corresponds to a different (collection of) source file(s) found in the src/ directory:

  1. (Section 2) Administrative Reduction of CPS Transformations

    • cps-trans.rkt
  2. (Section 3) Modular, Monadic CPS Macros

    • cps-monad.rkt
  3. (Section 4) Rewriting Administrative Steps Across Macro Boundaries

    • cps-inline.rkt
  4. (Section 5) Extensible Macro Rewriting Rules

    • cps-rewrite.rkt
  5. (Section 6) Case Study of Rewriting Copatterns

    • stats.rkt: calculations for measuring syntax tree statistics, and the benchmark suites of original / expanded code.

    • copattern-examples.rkt: a set of example programs using copatterns from [9]

    • composable.rkt: the original, naive implementation of copattern-matching macros from [9]

    • composable-inline.rkt: a revision of the above using macro-rewriting rules to eliminate administrative steps at expansion-time

References

[9] Paul Downen and Adriano Corbelino II. 2025. CoScheme: Compositional Copatterns in Scheme. TFP '25. Source: https://github.com/pdownen/CoScheme

About

Source code for Rewriting Macros [Scheme'25]

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages