|
|
1
14
“代数”来源于范畴理论。每种代数数据类型都是 initial algebra 把“代数”解释成“高中代数”(我不是要居高临下,那只是 how we refer to it )如你所知,有一些很好的类比。
|
|
2
3
那么一个非传统的答案是 indexed families this one . Childs的方法在关于关系(数据库)模型的开创性论文中得到了提及 Codd 1970 . 关键特性是,可以使用任何类型为组件集合编制索引;组件是异构的;编译器支持按组件和整个结构进行类型安全访问(读取和更新)。组件很可能在结构中按位置组织,但这是对程序员隐藏的实现细节。(哈斯克尔的记录系统在这一点上失败了。)
您可能接受也可能不接受SQL是一种编程语言。我可能不接受SQL“列名”是“索引族”的实现。SQL的列和行太多地面向物理布局(事实上,大多数供应商的SQL仍然允许对列使用位置表示法,尽管该标准已经弃用了位置表示法)。也就是说,SQL是最接近的。 有一些可扩展/匿名的记录系统是用Haskell(特别是HList)或Haskell类似的语言(比如Ur/web)提出/开发的,甚至还有亲爱的Hugs' TRex . (见 the Gaster & Jones paper 对于FP语言中其他尝试的链接),它们都是有限的,因为他们试图在Haskell的产品类型和上加上唇膏。 |
|
|
Zachiah · 为什么在打字稿中设置动态键是不健全的 11 月前 |
|
|
Aaditya · 在c中声明具有指定类型的变量++ 1 年前 |
|
|
温泽海 · R从公式中获取局部变量 1 年前 |