前言:这是在/r/haskell上发起的主题的扩展。 让我们先来看看事实: Android是一个非常棒的操作系统 Haskell是地球上最好的编程语言 因此,很明显,将它们结合起来将使Android开发变得更加优秀。所以我只想知道如何为Android操作系统编写Haskell程序。我...
我最近发布了一个有关于syntactic-2.0的问题,涉及share的定义。在GHC 7.6中已经可以工作:{-# LANGUAGE GADTs, TypeOperators, FlexibleContexts #-} import Data.Syntactic import Data.S...
Rust中的Traits与Haskell中的类型类(typeclasses)表面上看起来相似,但是有人写道它们之间存在一些差异。我想知道这些差异具体是什么。
我正在阅读Learn You a Haskell for Great Good,但我从不知道如何发音Haskell操作符。它们有“真正”的名称吗? 例如,您如何朗读这个表达式?Just (+3) <*> Just 9 我知道>>=是"bind",那其他操作符呢?由于谷...
Core是GHC的中间语言。阅读Core可以帮助您更好地了解程序的性能。有人问我关于阅读Core的文档或教程,但我找到的不多。 有哪些关于阅读GHC Core的文档可用? 目前为止,我找到了以下内容: 像C一样快的编写Haskell:利用严格性、惰性和递归 像C一样快的Haskell:...
我在思考如何用Haskell或Idris等强类型语言来表达智能合约(这样你就可以将其编译以在以太坊网络上运行)。我的主要关注点是:有哪种类型能够涵盖合约可能会做的所有事情? 天真的解决方案:EthIO 一个天真的解决方案是将合约定义为EthIO类型的成员。这种类型类似于Haskell的IO,但...
GHC有很多可以执行的优化,但我不知道它们都是什么,也不知道它们在什么情况下以及有多大的可能性被执行。 我的问题是:每次或几乎每次可以期望应用的变换是什么?如果我看到一个将要频繁执行(求值)的代码片段,并且我的第一个想法是“嗯,也许我应该优化它”,那么在哪些情况下我的第二个想法应该是“别想了...
在 Haskell 中,有标准的方法来分割字符串吗? lines 和 words 方法可以很好地通过空格或换行符进行分割,但肯定存在一种标准的方式来通过逗号进行分割,对吗? 我在 Hoogle 上找不到相关信息。 更具体地说,我正在寻找一种方法,使得 split "," "my,comm...
我正在尝试在ghci中定义跨越多行的任何简单函数,以以下内容为例:let abs n | n >= 0 = n | otherwise = -n 到目前为止,我已经尝试在第一行后按回车键:Prelude> let abs n | n >= 0 = n Pr...