gpt4 book ai didi

purescript - 如何从 Purescript 的 psci 运行跟踪?

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

我仍在学习 Purescript 基础知识,我可以获得 tracemain 开始工作函数,但如何在 psci 中使用它?这是我尝试但没有成功的方法,我无法真正理解为什么它不起作用。

> import Debug.Trace
> trace "aloha"
Error in module $PSCI:
Error in value declaration main:
Error at line 1, column 5 - line 1, column 15:
No instance found for Prelude.Show (Control.Monad.Eff.Eff (trace :: Debug.Trace.Trace | u12) Prelude.Unit)
See https://github.com/purescript/purescript/wiki/Error-Code-NoInstanceFound for more information, or to contribute content related to this error.

最佳答案

psci目前只能运行纯计算,但是当 0.7 版本发布时会发生变化,您将能够运行您的命令。

现在,如果您需要运行 Eff来自 psci 的操作,您可以使用不安全的函数来做到这一点:

> import Control.Monad.Eff
> import Control.Monad.Eff.Unsafe
> import Debug.Trace

> runPure (unsafeInterleaveEff (trace "Hello World!"))
Hello World!
Unit {}

在这里,我们不安全地转换了 Efftrace 提供的操作到 Pure计算,并使用 runPure把值(value)拿出来。这是什么 psci将在 0.7 版中自动化,但不幸的是,现在您必须手动完成。

关于purescript - 如何从 Purescript 的 psci 运行跟踪?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30067195/

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