小编sno*_*now的帖子

在Haskell中使用什么而不是主循环?

我需要main在Haskell中使用循环.我试过这个:

main :: IO ()
main =
  do
    putStrLn "do something"
    main
Run Code Online (Sandbox Code Playgroud)

上面的代码是正确的方法吗?这种无限递归会导致溢出吗?

haskell

29
推荐指数
1
解决办法
4399
查看次数

在monad的声明中,lambda符号"m >> n = m >> =\_ - > n"这个等式是什么?

class Monad m where
  return :: a -> m a
  (>>=)  :: m a -> (a -> m b) -> m b
  (>>)   :: m a -> m b -> m b
  m >> n = m >>= \_ -> n

  fail   :: String -> m a
Run Code Online (Sandbox Code Playgroud)

我以前从未在类型类中看过方程式(或函数声明?).为什么在类型类中有一个等式?

我知道_是一个匹配任何东西的术语.但是m >> =\_ - > n匹配?

monads lambda haskell lambda-calculus

13
推荐指数
1
解决办法
291
查看次数

Monad在haskell中的关联性规则

(m >>= f) >>= g = m >>= (\x -> f x >>= g)

有什么不同f\x->f x

我认为它们属于同一类型a -> m b.但似乎>>=等式右边的第二个对象的类型\x->f xm b.出了什么问题?

monads haskell associativity

9
推荐指数
1
解决办法
512
查看次数

整个Haskell会成为Curry的一部分吗?

我在维基百科上找到了Curry.它说库里几乎是一个超集,但不是因为缺乏某些东西.

我希望看到它支持整个Haskell.他们是否计划将Haskell作为Curry的一部分实施?

haskell logic-programming curry

8
推荐指数
0
解决办法
494
查看次数

如何在我安装cabal之后启动Yi-editor?

我跟着HaskellWiki,但我仍然不知道如何启动它.
我试过了:

yi
ghci yi
import Yi
main
Run Code Online (Sandbox Code Playgroud)

haskell cabal haskell-platform

6
推荐指数
1
解决办法
644
查看次数

咖喱编译器锌不能配置

当我配置 curry 的编译器锌时,我得到了这个:

checking for Haskell 98 compiler... 
checking for ghc... ghc
checking ghc version... 7.0
checking whether ghc supports Haskell 98... [1 of 1] Compiling Main             ( conftest.hs, conftest.o )
yes
using ghc for compilation
checking how to import IOExts... configure: error: import of IOExts does not work
Run Code Online (Sandbox Code Playgroud)

那么什么是 IOExts?我在哪里可以找到它?

haskell curry

5
推荐指数
1
解决办法
167
查看次数

如何获取函数的参数类型和返回类型?

我正在尝试在python中实现强类型的遗传编程.

有这样的样品吗?

def funcA(a,b):
  return a + b
return_type(funcA)

output: <class 'Integer'>
Run Code Online (Sandbox Code Playgroud)

def funcA(a,b):
  return a + b
parameter_type(funcA)

output: [<class 'Integer'>,<class 'Integer'>]
Run Code Online (Sandbox Code Playgroud)

更新:

我正在尝试生成python的表达式,并避免无法像这样评估的东西:

funcA(20, funcA(True, "text"))
Run Code Online (Sandbox Code Playgroud)

python types genetic-programming

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

为什么在clojure(eval(list + 1 2))和(eval(list'+ 1 2))做同样的事情?

user=> (eval '(+ 1 2))
3
user=> (eval '('+ 1 2))
2
user=> (eval (list '+ '1 '2))
3
user=> (eval (list + '1 '2))
3
Run Code Online (Sandbox Code Playgroud)

这是否意味着'+有时与+相同?

是否有任何规则来确定应考虑哪种情况?

clojure quote

3
推荐指数
1
解决办法
781
查看次数

Haskell中一个奇怪的类型类.什么是"类(Eq e,GenExpr e,MonadRandom m)=> GenProg me | e - > m其中"

class (Eq e, GenExpr e, MonadRandom m) => GenProg m e | e -> m where
Run Code Online (Sandbox Code Playgroud)

确切地说,我无法理解这个GenProg我| e - > m

我猜GenProg是一个构造函数.

这是否意味着:模式与GenProg mee匹配的那个- > m,其实例可以定义?

顺便说一句,我在哪里可以获得haskell中的所有语法?

haskell typeclass

2
推荐指数
1
解决办法
177
查看次数

我可以将numpy与AMD的gpu加速blas库链接

我重新调整了numpy可以与blas链接,我想到为什么不使用gpu加速blas库.

有人这么做吗?

python gpgpu numpy opencl

2
推荐指数
1
解决办法
2040
查看次数

Haskell,简单的模式匹配会产生错误

let countList (x:xs) = 1+countList xs
let countList [] = 0
countList [1,2,3]
*** Exception: <interactive>:35:5-20: Non-exhaustive patterns in function countList
Run Code Online (Sandbox Code Playgroud)

我认为这样做太简单了,但是错误仍然存​​在,我感到震惊

haskell pattern-matching

2
推荐指数
1
解决办法
116
查看次数

emacs/spacemacs是否支持嵌入在Rust Macro中的嵌套C++模式?

参考:rust-cpp

emacs/spacemacs可以在主模式下支持嵌套模式吗?我习惯于对emacs/spacemacs进行vim和new.

emacs macros rust spacemacs rust-macros

2
推荐指数
1
解决办法
177
查看次数