Skip to content

Represent functions using higher-order abstract syntax (HOAS) *using macros to save names*

License

Notifications You must be signed in to change notification settings

Blaisorblade/hoas-with-names

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hoas-with-names

Represent functions using higher-order abstract syntax (HOAS) using macros to save names.

To try this out, launch sbt and type the run command. This will show the reification of the terms in NamedHoasUsage.scala, which preserves user-specified names! However, those names are there for strictly cosmetic purposes - they do not represent the binding structure accurately.

If you're curious about the implementation, take a look at macros/Macros.scala.

Implementation note: currently this uses Scala 2.11 macros and quasiquotes.

About

Represent functions using higher-order abstract syntax (HOAS) *using macros to save names*

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages