小编las*_*epe的帖子

在 Julia 中,是否有一个宏来确定表达式是否可以在解析时求值?

在许多情况下,我希望能够断言某个值不会在运行时求值。例如,在构造一些参数化 struct 时Foo{A} where {A},我想确保A在解析时已知并且不能通过动态分派确定。例如类似的东西Foo{@isstatic A}()

有办法强制执行吗?

更新1:

也许我想要的是检查类型是否是Core.Compiler.Const(例如通过类型断言)?但我怀疑这是否是正确的做法。

更新2:

也许另一种表达方式是:是否有类似constexprJulia 中的 C++ 的东西旨在在 Base 之外使用?

performance static julia

6
推荐指数
1
解决办法
381
查看次数

如何在Julia中以编程方式确定未参数化的类型名称?

有时访问类型的非参数化版本会很有帮助。例如,如果我有一些foo::Foo{A,B}东西的话,那就很好basetype(foo::Foo{args...}) = Foo。朱莉娅会提供这样的东西吗?

julia

2
推荐指数
1
解决办法
39
查看次数

标签 统计

julia ×2

performance ×1

static ×1