看起来书籍《Real World Haskell》正是你想要的。你可以在网上免费阅读它。
F#没有包含任何神奇的魔尘,可以将函数传递到不同的CPU或机器上。F#/Haskell和其他函数式编程语言使您能够编写可以独立于创建它们的线程或CPU进行处理的函数。
我不觉得在这里发布我参与的播客链接很合适。这似乎有点离谱,但在我们与Matt Podwysocki交谈的Herding Code一集中,我们问了同样的问题,他给出了一些有趣的答案。该集还有很多关于函数式编程的好链接。我发现一个名为“为什么函数式编程很重要”的链接。那可能会为你提供一些答案。
这也许也是有趣的:《实用函数式编程》
例子使用 F# 和 C#,但理论相当通用。 根据我所读过(预发布版),它绝对是有趣的,但到目前为止我认为它让我更想坚持使用像 Parallel Extensions 这样的 C# 库。
由于您提到了Win32和DLL,我猜想您正在处理非托管代码。在这种情况下,GHC非常适合您。去年底,我使用FFI编写了一个DDE服务器,在Windows下与Microsoft DDE库通信,令人惊讶的是,这是一次非常愉快的经历(尤其是考虑到我是Unix用户)。
Haskell的FFI功能强大(甚至支持从C或其他库回调到Haskell函数),在编写C级别代码时拥有Haskell的类型检查就像梦想成真一样。
最后一点是Haskell的主要优势之一:类型系统非常出色。话虽如此,它就像任何强大的工具一样,需要时间和精力来充分利用它。
是的,用Haskell编写一些小代码片段并将其链接到您的其他代码中是可能的(尽管您可能会发现从编写链接到您的其他代码的小型Haskell程序开始更容易),并且值得花费相当多的时间学习和在任何地方使用它。您可能最终像我一样,在Haskell中规划一个与Windows代码紧密集成的相当大的项目(在我的情况下,是一个复杂的Excel插件)。