[過去ログ] 関数型プログラミング言語Haskell Part33 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
35: 2020/02/15(土)18:44:53.36 ID:20tth6Hi(2/2) AAS
>>33
ふーむ
cabal ファイルに書くパッケージのバージョン制限は、
その範囲ならなんでもビルドできますよ、サポートしてますよってサイン。
だから base 含め妥当なバージョンを書いておくべきってのは言えるけど…

状況はリビルドしただけで依存パッケージのバージョンが上がって壊れた、みたいな感じかな?
cabalってそんな風に動作するんだっけか
392
(1): 2020/08/19(水)15:58:22.36 ID:FHOhxH/M(1/4) AAS
(1)と(2)で同じ関数だそうです。

add :: Int -> Int -> Int

add :: Int -> (Int -> Int)
と等価だそうです。

だとするならば、

(1)のほうが理屈の分かる書き方のように感じます。
(2)はadd' :: Int -> Int -> Intであると宣言しておきながら、その中身の表現を見ると、2つのInt型の引数を受け取ってその和を返す関数にしか見えません。
それにもかかわらず、add' 1は1引数の関数で引数に1を足す関数を表しています。非常に違和感を覚えるのですが、(2)は一体どういうことなのでしょうか?
わかりにくいです。

(1)
add :: Int -> Int -> Int
add n = \x -> x + n
(2)
add' :: Int -> Int -> Int
add' n m = n + m
453: 2020/08/31(月)00:20:32.36 ID:XlY0VH6O(1) AAS
Complex RationalにNumのinstance宣言できないかと思って以下のようにしてみました

instance Num (Complex Rational) where
(x:+y) + (x':+y') = (x+x') :+ (y+y')
(x:+y) - (x':+y') = (x-x') :+ (y-y')
(x:+y) * (x':+y') = (x*x'-y*y') :+ (x*y'+y*x')
negate (x:+y) = negate x :+ negate y
abs z = undefined
signum z@(x:+y) = undefined
fromInteger n = fromInteger n :+ 0

結果以下のようにそれは無理と怒られます
何かてはないでしようか?

Haskell Online Compiler [ghc-8.4.4]
Copyright (c) The University of Glasgow

Compiling your program...

[1 of 1] Compiling Main ( prog.hs, prog.o )

prog.hs:7:10: error:
• Illegal instance declaration for ‘Num (Complex Rational)’
(All instance types must be of the form (T a1 ... an)
where a1 ... an are *distinct type variables*,
and each type variable appears at most once in the instance head.
Use FlexibleInstances if you want to disable this.)
• In the instance declaration for ‘Num (Complex Rational)’
|
7 | instance Num (Complex Rational) where
| ^^^^^^^^^^^^^^^^^^^^^^
749: 2021/02/18(木)09:29:03.36 ID:8Wc99cSo(1/2) AAS
なんかしょうもない話なんですけどウチの環境で次が通ります

test x = case x of
_ | odd x -> 1
oyherwise -> 0

main = do
print $ test 123
print $ test 456

なんか笑ってしまいました
766
(1): 2021/03/18(木)23:49:21.36 ID:wWeTTUcP(2/2) AAS
>>764
そうですね
例えばcall by nameとcall by needの違いを調べようと思った時に出てきた

外部リンク:reader.elsevier.com

なんかバリバリ出てきます
なんのこっちゃと

>>165
coqもよく聞きますよね
なんかおすすめの教科書とかありますか?
770
(1): 768 2021/03/19(金)02:15:59.36 ID:MuA020tT(2/2) AAS
>>769
ごめんなさい
僕は別人で割り込みです
996
(1): 2021/12/18(土)00:42:46.36 ID:om0zr0Am(1) AAS
>>994
結論だせる個人は存在するけど
組織になるとなぜか、結論だせない奴が代表者を気取ってるだけじゃん
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 1.387s*