idris 相关问题

Idris是一种具有依赖类型的通用纯函数式编程语言。

Prelude如何允许Nat使用数字文字?

在使用Idris ch进行类型驱动的开发中。在图4中,他们说Prelude还定义了功能和表示法,以允许像其他任何数字类型一样使用Nat,因此不必写S(S(S(S(SZ))),...

回答 1 投票 0

Idris中向量的类型检查

从REPL,如何不能确保将列表确实解释为向量呢?例如,如果我输入::t Vect我得到Vect:Nat-> Type->如果我输入:...

回答 1 投票 1

安装Idris2时Chez Scheme出现realpath错误

这是我的机器,软件:系统软件概述:系统版本:macOS 10.14.6(18G103)内核版本:Darwin 18.7.0我正在按照本指南安装Idris2。到目前为止,我已经完成了...

回答 2 投票 0

Emacs的搜索/提升孔Idris命令

[我注意到在Edris-dev GitHub Wiki中没有等效的命令用于emacs中的Atom搜索(Cntl-Alt-S)和Lift Hole(Cntl-Alt-L)命令。有人知道如何设置吗?

回答 1 投票 0


Idris:关于向量级联的证明

假设我有以下idris源代码:module Source import Data.Vect-为避免Prelude.List。(++),Prelude.String。(++)和Data.Vect。(+ +)infixl 0 +++(+ ...

回答 1 投票 2

具有任意嵌套Vect的张量定义

我正在尝试创建一个Tensor类型,但是在使用构造函数的类型签名时遇到了麻烦。在这个和这个问题中,他们将张量定义为张量的Vect,并且在此...

回答 1 投票 1

将参数传递给参数为LTE的函数的证明

我有一个函数减去两个Nats。我如何证明我要传递给它的第一个参数实际上小于第二个伪参数:(k:Nat)->(n:Nat)-> {自动更小:LTE kn}-&...

回答 1 投票 0

Idris产品中的图案匹配

定义ZZ:类型ZZ =(Nat,Nat)然后是以下代码ZZ_greater_than_zero:ZZ->布尔ZZ_greater_than_zero(Z,Z)=假ZZ_greater_than_zero(Z,(S n))=假ZZ_greater_than_zero((S m).. 。

回答 1 投票 1

我可以避免在Idris的全部函数中明确释放无效案例吗?

请考虑以下(非常简化的)示例,该示例通过在其值上附带条件来约束数据类型:data Transport = Car |脚|船总轮数:(运输:运输)-> {auto ...

回答 1 投票 0

Idris交互式编辑命令在Linux的Atom中不起作用

Idris 1.3.2版和Atom已成功安装在Ubuntu Linux的Kubuntu版本上。 idris二进制文件的正确路径已放入Atom的程序包设置中。 REPL可以正常运行...

回答 1 投票 1

如何通过自定义Idris FFI传递功能?

我正在尝试为我的代码源实现FFI部分,尽管传递Int这样的值很有效,但我最大的问题是弄清楚如何传递函数。因此,在docs中有一个带有...

回答 1 投票 0

Cabal无法解决对Idris的依赖性

我是Haskell生态系统的新手,正在尝试在我的MacOS Catalina上安装Idris。因此,在$ brew install ghc $ brew install cabal-install之后,我有了The Glorious Glasgow Haskell编译系统,...

回答 1 投票 0

将存在性提升到类型级别

tl; dr:我正在尝试重写一些具有Haskell中sigma类型列表的依存类型代码,并且我似乎无法为存在性生成单例,换句话说,此代码失败:data。 ..

回答 1 投票 3

对单个构造函数参数进行归纳时证明总数

我们有一个带有单个构造函数的以下类型:-如果某些数据的n = k + k,则IsTwice n被居住IsTwice:Nat->类型,其中Twice:(k:Nat)-> IsTwice(k + k)我正在尝试...

回答 1 投票 1

我如何在Idris中使用ST来获得ReaderT r可能是a?

我已经阅读了Control.ST教程多次,但是我仍然不清楚如何使用它来实现在Haskell中使用monad转换器的那种效果。我的具体情况是我...

回答 1 投票 2

Idris中的定义基团

我在Idris中将monoid定义为接口Is_monoid(ty:Type)(op:ty-> ty-> ty),其中id_elem:()-> ty proof_of_left_id:(a:ty)->((op a(id_elem( )))= a)...

回答 1 投票 4

用约翰·梅杰(John Major)的等式重写(重新加载)

John Major的等式带有以下重写的引理:检查JMeq_ind_r。 (* JMeq_ind_r:forall(A:类型)(x:A)(P:A->支撑),P x-> forall y:A,JMeq y x-> ...

回答 1 投票 2

如何使Idris警告不完整的案件/比赛?

例如,对于以下类型实现Show实例:data Shape = Circle Double | Box Vector2D |多边形(列表Vector2D)|链(List Vector2D)......

回答 1 投票 0


© www.soinside.com 2019 - 2024. All rights reserved.