我偶然发现了ScalaCL项目及其compiler plugin项目,它有一个非常棒的循环优化器。
这让我想知道:
哪些编译器插件可用于scala?
插件不一定是性能改进插件;任何类型的插件都有资格获得此列表。
(我已完成Google搜索,但此查询的信噪比很低。)
答案 0 :(得分:12)
一些插件与邮件列表this thread,autoproxy,browse,enhanced strings上的avro相关联。
来自Scala团队,现有delimited continuations插件,以及当前对effect system插件的努力。
编写插件的文档是here。
答案 1 :(得分:3)
在scalaz中还有一个用于生成功能镜头的编译器插件:https://github.com/gseitz/Lensed有关详细信息,请参阅此处:http://groups.google.com/group/scalaz/browse_thread/thread/a9334c5741b67d55
答案 2 :(得分:2)
还有用于优化泛型的miniboxing插件:scala-miniboxing.org。
答案 3 :(得分:1)
这是一个由Eiríkr Åsheim编写的插件,它优化了通用数字代码(运行时+编译器插件): https://github.com/azavea/numeric