Haskell中`Typ{..}`语法:名称、读法与使用方法解析
关于Haskell中记录参数语法的疑问
最近我在阅读一段Haskell库代码时,遇到了一段特殊语法,虽然能理解它实现的功能,但对这个语法本身的名称和用法不太清楚,想请教一下。
对应的代码片段如下:
momenta :: (KnownNat m, KnownNat n) => System m n -> Config n -> R n momenta Sys{..} Cfg{..} = tr j #> diag _sysInertia #> j #> cfgVelocities -- ^^^^^^^^^^^^^^^ 这里的语法是我的疑问点 where j = _sysJacobian cfgPositions
我已经了解相关类型的记录结构:
System类型包含记录字段{ _sysJacobian :: R n -> L m n }Config类型的记录声明包含{ cfgVelocities :: R n }
我能明白这段代码是计算系统动量的逻辑,但就是搞不懂momenta Sys{..} Cfg{..}这种写法是什么语法,想知道它的名称以及具体的使用规则。
内容的提问来源于stack exchange,提问作者WorldSEnder
相关产品推荐
相关产品推荐

