[過去ログ] 関数型プログラミング言語Haskell Part16 (978レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
355: デフォルトの名無しさん [sage] 2011/11/04(金) 09:33:28.24 AAS
haskellをカタカナで書くのって違和感があるんだけど、
そんな書き方をしているのはどんな人なの?
356
(1): デフォルトの名無しさん [sage] 2011/11/04(金) 09:51:30.21 AAS
じゃあ漢字で「蓮蹴」
357: デフォルトの名無しさん [age] 2011/11/04(金) 10:35:20.27 AAS
>>354
354(1): デフォルトの名無しさん [sage] 2011/11/04(金) 07:15:35.57 AAS
アメリカの宝石デザイナーのMiriam Haskellは、
日本ではミリアム・ハスケルで通ってるみたい。
イギリスとアメリカじゃ読みが違うのか?
schwa音だから、母音はどうでもいい。
358: デフォルトの名無しさん [sage] 2011/11/04(金) 12:32:15.54 AAS
>>356
もっと Haskell の何かを表した、言い得てみょんな当て字があるといいんだけどなぁ

bookkeeping -> 簿記
function -> 函数

みたいに
359: デフォルトの名無しさん [sage] 2011/11/04(金) 12:50:46.86 AAS
そういうのはたまたま運のいい語でないとむりぽ

治具とjigとか
360: デフォルトの名無しさん [sage] 2011/11/04(金) 13:01:35.96 AAS
削切 はつきる
361: デフォルトの名無しさん [sage] 2011/11/04(金) 13:01:42.73 AAS
荒井熊
362: デフォルトの名無しさん [sage] 2011/11/04(金) 13:33:58.20 AAS
'アスクル
363: デフォルトの名無しさん [sage] 2011/11/04(金) 17:15:28.22 AAS
あなたは運についてしってますか???」
364: デフォルトの名無しさん [sage] 2011/11/04(金) 17:15:46.20 AAS
来未の運理論でぐぐってね ひゅひゅ
365
(1): デフォルトの名無しさん [sage] 2011/11/04(金) 23:08:47.74 AAS
値を部分的に更新しながら使い回す場合、
必ずミュータブルな操作を持つデータ型を使わないといけないのか、
それともIOモナドやSTモナドの中に入れてしまうだけでいいのでしょうか。
例えば配列でMArrayを使わずに、
IORef (Array Int Int)みたいなデータ型を用意して、
IOモナドの中でmodifyIORef x (// y)としても、配列を新しく作り直さずにxを更新できたことにはなるんでしょうか?
366: デフォルトの名無しさん [sage] 2011/11/05(土) 10:51:35.93 AAS
>>365
IORefはポインタ
writeIORefで破壊的に更新できるのはポインタ部分だけで、
中身を破壊できる訳ではない

modifyIORef x (//y)とすると、新しい配列(を作るサンク)が作られた上で、
xがそれを指すように更新される
367: デフォルトの名無しさん [sage] 2011/11/05(土) 16:31:37.95 AAS
ありがとうございます。
やっぱり駄目かー。
368
(1): デフォルトの名無しさん [sage] 2011/11/05(土) 18:33:22.15 AAS
外部リンク:blog.higher-order.net
新しい実体といっても、後ろに追加する以外でも、メモリ上で共有される実装であれば、
参照は遅いけど、更新が軽いという場合があるよ。
369: デフォルトの名無しさん [sage] 2011/11/05(土) 19:05:50.19 AAS
外部リンク:itpro.nikkeibp.co.jp

>LinuxやMac OS XなどのUnix環境では,ロケール(locale)の設定を見て自動的に適切な文字コードに変換してくれます。ロケールは,言語や時刻など,使用しているOSのローカルな設定を決めるためのものです。

>Prelude System.IO> putStrLn "テスト"
>テスト

>一方,Windowsでは,UTF(UCS Transformation Format)とHaskellプログラム内部の文字コードとの間で変換を行うことはできますが,技術的な問題からShift_JIS(Microsoftコード・ページ932)のような2バイト文字ではまだ文字コードの変換ができません

LinuxやMacはiconvとか無しでも日本語扱えるようになったのに、Windowsだけなんて・・・orz
370: [―{}@{}@{}-] デフォルトの名無しさん [sage] 2011/11/05(土) 20:02:11.39 AAS
>>368
HaskellのArrayはpersistentじゃない
371: デフォルトの名無しさん [] 2011/11/05(土) 20:17:35.88 AAS
要は素直にmutableなコンテナ使っておけばいいんだろ?
372: デフォルトの名無しさん [sage] 2011/11/05(土) 20:57:00.85 AAS
画像ファイルを読み込んで、いくつかフィルタを施して、結果を保存する場合、
フィルタリングするイメージデータを格納するコンテナには何が適切なの?
373
(1): デフォルトの名無しさん [sage] 2011/11/05(土) 21:03:14.21 AAS
CArray
374: デフォルトの名無しさん [sage] 2011/11/05(土) 21:11:15.45 AAS
>>373
ありがと、調べてみる
375: デフォルトの名無しさん [sage] 2011/11/05(土) 21:24:41.49 AAS
[Word8]
376: デフォルトの名無しさん [sage] 2011/11/06(日) 01:25:51.61 AAS
外部リンク:repa.ouroborus.net これも使えそうと思ってブックマークしてる。
377
(1): デフォルトの名無しさん [sage] 2011/11/06(日) 02:49:06.58 AAS
Haskellの変数の有効範囲って何か具体的に決まっているのかな?
Haskel Reportを読んでもはっきりと書かれていないような。

以下のように関数(>>?)を定義してvalue1, value2を求めると
value1は普通に求められるが、value2は\s -> s + aのところで
aが未定義ですとか言われる。

括弧があると変数の有効範囲が変わるのかな?

(>>?) :: a -> (a -> b) -> b
v >>? f = f v

value1 = (1, 2) >>? \(a, b) -> b >>? \s -> s + a
value2 = (1, 2) >>? (\(a, b) -> b) >>? \s -> s + a
378
(1): デフォルトの名無しさん [sage] 2011/11/06(日) 05:53:55.40 AAS
>>377
関数の仮引数の有効範囲はその関数本体というのが基本原則。

> value1 = (1, 2) >>? \(a, b) -> b >>? \s -> s + a

value1 = (1, 2) >>? (\(a, b) -> b >>? \s -> s + a)
と解釈されるのでs + aは\(a,b) -> ...の関数本体内に含まれるが

> value2 = (1, 2) >>? (\(a, b) -> b) >>? \s -> s + a
はかっこがあるため含まれない。
379: デフォルトの名無しさん [sage] 2011/11/06(日) 13:47:42.37 AAS
>>378 ありがとう。
メタルールか。なんとなく理解した。
1-
あと 599 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.027s