関数型プログラミング言語Haskell Part34 (691レス)
上下前次1-新
抽出解除 レス栞
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
30(3): デフォルトの名無しさん [sage] 2021/12/31(金) 16:30:35.01 ID:aP8qPSMg(3/5) AAS
>>2929(1): デフォルトの名無しさん [] 2021/12/31(金) 14:58:51.96 ID:bqUePCKa(1/2) AAS
スクラッチで書くなら(0:)で0を追加して(0:1:_)をカウントしていくんだろうな
chkspand :: Char -> Int
chkspand c = if c == ' ' || c == '\t' || c == '\n' || c == '\r' then 0 else 1
wordcount = let
iterator [ ] = 0
iterator ( 0: 1: xs ) = 1 + ( iterator xs )
iterator ( x : xs ) = iterator xs
in iterator . ( 0 : )
main = do
print $ map chkspand $ " asas df df"
print $ wordcount . map chkspand $ " asas df df"
wc5 = let
iterator [] = 0
iterator (0:1:xs) = 1 + (iterator xs)
iterator (x:xs) = iterator xs
in iterator . ((0::Int) :)
wc5 . map chkspand $ "0 hushjuh hhuj 89 546456"
5
上手く行きました
イテレータのパターンマッチ目からウロコ
32(1): デフォルトの名無しさん [] 2021/12/31(金) 20:58:03.01 ID:bqUePCKa(2/2) AAS
>>3131(1): デフォルトの名無しさん [sage] 2021/12/31(金) 20:42:25.11 ID:aP8qPSMg(4/5) AAS
>>30のこれ
iterator (0:1:xs) = 1 + (iterator xs)
内部で
1+1+1+1+...が積みあがって最後に計算されるの?
それは処理系のimplement依存だから一概には言えないけど多分stack上に(1+)関数が乗っていって最後に確定した0が入ってから計算しそうな気がする
74: デフォルトの名無しさん [sage] 2022/02/09(水) 16:30:45.01 ID:tjRbJd/i(1) AAS
両方ないならAPIと言語が無関係なクラウドみたいな感じになりそう
169: デフォルトの名無しさん [] 2022/12/15(木) 11:15:36.01 ID:3Q63kYiw(1) AAS
いや15年越し
外部リンク[htm]:game.watch.impress.co.jp
>Sweeney氏は純粋関数型言語のもつ並列処理安全性に着目しており、将来的にゲームプログラミングはそういった処理系に移行していくべきだとした。Sweeney氏はそのひな形として言語“Haskel”を挙げているが、ゲーム開発のメインストリームたり得る言語はまだ登場しておらず、将来に期待しているという。
258(1): デフォルトの名無しさん [sage] 2023/11/16(木) 18:41:54.01 ID:wXoixzgD(1) AAS
岡部健、復活したよ!
エックス内を
“Ken140291“
で探してみて下さい。
最近登録したばかりの様です。
474(1): デフォルトの名無しさん [] 2024/10/04(金) 20:44:30.01 ID:tixO3LDq(5/22) AAS
>>472472(1): デフォルトの名無しさん [sage] 2024/10/04(金) 20:18:31.78 ID:WSIC8Xt5(1/14) AAS
だから、副作用を隠してラムダ計算に変換する手続きは、世界をステートにする変換をした時点で達成されてるわけで、そんなの太古の昔から分かってたことだろ
IO aの定義読んでから出直せよ
だからそれはわかっているって。評価途中では実際の入出力はせず指示書だか値のリストだけ作成して
参照透過性を保証して、参照透過性が要求されなくなったプログラムの最終段階でリストに従って
入出力を実行するような仕組みがあれば、参照透過性を保ったまま入出力はできるという話でしょ。
それを数学的にどう正当化するかという話を書いているんだって。
>>473水曜日あたりからだからそんな分量ないよ。
503: デフォルトの名無しさん [sage] 2024/10/04(金) 22:50:56.01 ID:WSIC8Xt5(11/14) AAS
>>501501(1): デフォルトの名無しさん [] 2024/10/04(金) 22:44:05.60 ID:tixO3LDq(17/22) AAS
>>499
はっきりそうは言ってない。
プログラムをλ項に対応させて単純化させると、valueからvalueへの全域関数となるけれど、
そう考えると、非停止性とか非決定性、副作用といった現実のプログラムにある特徴が失われる(だからそれを何とかしようと読める)。
>>500
そんなことできるほど力量ないです。
なんでラムダ項に対応させると全域関数になるわけ?ラムダ計算は停止しない計算も表現できるモデルでしょ
言ってることが意味不明なんだよ
671(2): デフォルトの名無しさん [sage] 2025/10/08(水) 14:05:41.01 ID:JTvRYaZp(1) AAS
GC言語はGC使ってる時点で副作用あるやんw
メモリ管理他人任せにしてるだけだ
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.049s