小编KA1*_*KA1的帖子

Haskell:实际的IO monad实现,用不同的语言?

IO monad实际上是如何实现的?在意义上,该main函数的实际实现是什么?

我如何从另一种语言调用haskell函数(IO),在这种情况下,我是否需要维护IO自己?

是否main将IO操作(Lazily)作为引用拉出然后调用它们?或者它是解释工作,当它发现它可以调用它们的方式的行动?或者别的什么?

有不同语言的IO monad实现是否有助于深入理解主要功能中发生的事情?

编辑:

hGetContents让我很困惑,让我不确定IO是如何真正实现的.

好吧,假设我有一个非常简单的纯Haskell解释器,不幸的是没有IO支持,并且为了好奇,我想向它添加这个IO动作(unsafeIO技巧也).很难从GHC,Hugs或其他人那里得到它.

io monads interpreter haskell

15
推荐指数
5
解决办法
3938
查看次数

结构化数据验证的依赖类型

首先,我真的不知道依赖类型有什么问题,为什么我们看不到用现有语言实现实际编程,而不是发明所有类型的技巧(模式!)来绕过当前类型系统的限制这至多具有非常简单和有限的概括.

但我的问题是关于数据的依赖类型而不是程序,我们如何或可以将它们用于结构化数据验证?像json或xml或任何类型的结构化数据这样的含义是否可以使用某些依赖类型系统有效地验证它们?

编辑:

我的意思是依赖类型,它是最宽泛的定义"依赖于一个值的类型",而不是那些定理证明者和CoC工作人员.我不知道他们,我不想走那条路,我不相信那些唯一的或"最终"的方式来获得体面的依赖类型.在FP中,编码人员每天以非常优雅,建设性的方式编写他们最复杂的逻辑,简单而且完全没有问题.我相信他们将拥有他们最终的"优雅"依赖打字.

但是,我的问题是关于纯数据,不像在代码中很多检查可能是不必要的,并且只能隐藏在程序流和逻辑中,甚至动态类型也可以正常工作.在数据中,当您想要检查某些文档的正确性并给出明确的错误消息时,情况并非如此.另一方面,当你必须在极端依赖型系统(CoC系列)中处理"功能"时,数据没有复杂性问题.

ocaml haskell type-systems functional-programming dependent-type

12
推荐指数
1
解决办法
1094
查看次数

Haskell:FRP Reactive Parsec?

Parsec在Haskell中是否(或可能有)反应(或任何其他纯函数解析器)?

简单地说,我想通过char自己提供解析器char,并获得足够多的结果以获得输出.

或者更简单,我怎么能这样做foldr或者至少map呢?

我们是否需要不同版本来支持这种反应行为?

编辑

我的问题特别是关于FRP.我用一个解析器作为例子,这是我能想到的最好的解释我的问题并大致了解我需要的东西.

我相信FRP不只是关于UI,对吗?

haskell parsec frp reactive-programming

10
推荐指数
3
解决办法
811
查看次数

GObject Gtk,Gnome,Gtk +,Gl,Gtk2,Gtk3 ......我不明白?

我需要一些窗口来托管webkit或/和cairo drwaing,但我必须首先处理所有这些以了解我正在做什么.

现在.我迷失了,不再理解那是什么了.

当我尝试使用绑定或试图确定什么是依赖项时,事情变得更糟.例如:在python中,pyGtk已弃用并被pyGObject替换(有时称为pyGl !!)

有许多网站,许多下载和版本,混合过时和新的参考,但没有一个整体的架构视图.

什么我不明白..这些东西是如何在太多的网站,包和版本中相互混合的?

gtk gobject gtk2

9
推荐指数
2
解决办法
7757
查看次数

如何获取声明的变量和其他定义

我在嵌入式REPL中使用Roslyn脚本API,我不时需要知道在当前会话中定义了哪些变量,以及所有其他定义(类,接口......)以及引用和导入的命名空间.

我在API中找不到任何可以给我那种信息的东西,我知道它在某处.

Dose Scripting API使用一些不寻常的实现,比如每次都更新内存中的程序集?如果是这样,如何访问该程序集.

c# scripting roslyn

4
推荐指数
1
解决办法
386
查看次数