gpt4 book ai didi

scala - 如何理解和使用scala宏,编写更复杂的函数

转载 作者:行者123 更新时间:2023-12-01 03:57:10 24 4
gpt4 key购买 nike

scala 宏的文档很难理解,所以我想如果要在实际情况下使用它,我认为它必须有一些背景知识。

我请求帮助了解这些知识是什么。

c.Expr[Unit](Block(treesWithSeparators.toList, Literal(Constant(()))))

它是宏的代码片段,关于 Block 的含义和其他类似术语的信息很少。如果这些关键点丢失了,就很难深入。

所以如果有人知道哪里有更详细的文档或教程,请告诉我,谢谢:)

最佳答案

It is hard to go deep in if these key points lost.



是的,这是真的,但不是每个人都能进入宏是件好事。它们是一个强大的功能,不完全理解它们的用户不应使用它们。

深入研究宏需要大量的自学,没有简单的方法来了解它们的工作方式以及如何使用它们。

尽管如此,已经有很多有用的文档了。比如这个问题想知道如何理解AST: Where can I learn about constructing AST's for Scala macros?

另一方面的这个问题对如何使用 reify 给出了一些值(value)。 : What's the easiest way to use reify (get an AST of) an expression in Scala?

在 docs.scala-lang.org 上有一个很棒的 overview可用,描述宏可以做什么,不能做什么。 official homepage还包含很多有用的信息。

在 StackOverflow 上阅读更多问题、在 GitHub 上查看源代码或在网络上搜索有关宏的博客文章应该不那么困难。

一开始,这应该足以找到进入宏观 hell 的方法。

关于scala - 如何理解和使用scala宏,编写更复杂的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16329913/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com