- 関数型プログラミング言語Haskell Part30 [無断転載禁止]©2ch.net
642 :デフォルトの名無しさん[sage]:2017/06/12(月) 01:46:50.84 ID:4tiz7p+p - [ “aa”, “bb”, [“cc”,”dd”] ]
の型がどうやって合うと思ったのだろうか。
|
- 関数型プログラミング言語Haskell Part30 [無断転載禁止]©2ch.net
650 :デフォルトの名無しさん[sage]:2017/06/12(月) 20:01:13.71 ID:4tiz7p+p - GHCi で ["aa", "bb", ["cc", "dd"]] を評価してみれば一発だろうに
• Couldn't match expected type ‘Char’ with actual type ‘[Char]’ • In the expression: "cc" In the expression: ["cc", "dd"] In the expression: ["aa", "bb", ["cc", "dd"]]
|
- 関数型プログラミング言語Haskell Part30 [無断転載禁止]©2ch.net
653 :デフォルトの名無しさん[sage]:2017/06/12(月) 22:39:18.30 ID:4tiz7p+p - >>651
https://paiza.io/projects/TpKm5_4fBEc7_YoKQIeKJQ こういうのがお望み? いずれにせよ List のデータコンストラクタ(:)を持ち出した >>633 は救済できんが。
|
- 関数型プログラミング言語Haskell Part30 [無断転載禁止]©2ch.net
655 :デフォルトの名無しさん[sage]:2017/06/12(月) 22:49:39.74 ID:4tiz7p+p - https://paiza.io/projects/4geVOsfwAnMedzLfkbEDpw
こっちのほうがパラメータ多相でいいか。
|
- 関数型プログラミング言語Haskell Part30 [無断転載禁止]©2ch.net
656 :デフォルトの名無しさん[sage]:2017/06/12(月) 22:58:41.14 ID:4tiz7p+p - ちなみに、自分自身を要素の型とするかのような「ネストしたリスト」のようなデータ構造(というかinfnite typeのまがいもの)自体はときどき使いたくなるので簡単なライブラリを書いたことはある。そういやOCamlは オプショナルだが infnite type 扱えるんだったっけ??
|
- 関数型プログラミング言語Haskell Part30 [無断転載禁止]©2ch.net
659 :デフォルトの名無しさん[sage]:2017/06/12(月) 23:39:48.75 ID:4tiz7p+p - >>657はできるという根拠をコードで示せばいい。
Haskell 2010 に従ったコードで、しかしGHCが不当にも 型検査で排除するというような、そういうコードを示せば 話はたちまちに解決する
|
- 関数型プログラミング言語Haskell Part30 [無断転載禁止]©2ch.net
660 :デフォルトの名無しさん[sage]:2017/06/12(月) 23:42:32.96 ID:4tiz7p+p - [“aa”, [“bb”,”cc”]]
について Haskell2010 の構文規則をを充足するような Haskellの型をつけてくれればいい
|
- 関数型プログラミング言語Haskell Part30 [無断転載禁止]©2ch.net
664 :デフォルトの名無しさん[sage]:2017/06/12(月) 23:59:06.10 ID:4tiz7p+p - >>663
>1の次の数は2であることを証明しろ的な >つまり1=2は間違いとは言えないのだ Succ 1 = 2 とか普通にPAで証明できるけど……
|