IdrisでEffectモジュールなどを使おうとしたときに出るCan't find import Effect/Barの対処

問題

Main.idr

import Effect.Default

main : IO ()
main = do
  printLn $ the Int default
  printLn $ the Char default
  printLn $ the Bool default
  printLn $ the String default
  printLn $ the (List String) default
$ idris -o Main Main.idr
Can't find import Effect/Default

解決

 -peffectsを指定してあげる。

$ idris -o Main Main.idr -p effects
$ ./Main
0
'\NUL'
False
""
[]

 もちろんEffect.Barモジュール以外の時もこれを念頭に置いておくと便利。

参考ページ

筆者プロフィール

my-latest-logo

aiya000(あいや)

せつラボ 〜圏論の基本〜」 「せつラボ2~雲と天使と関手圏~」 「矢澤にこ先輩といっしょに代数!」を書いています!

強い静的型付けとテストを用いて、バグを防ぐのが好き。Haskell・TypeScript。