関数型言語MLについて語るスレッドです。
MLは、確固とした理論的背景を持つ言語でありながら、
現実的なソフトの開発にも使用できる実用性を備えた言語です。
また、プログラミングの初心者が最初に学習する言語としても優れています。
総本山
Standard ML http://www.smlnj.org/
Objective Caml http://caml.inria.fr/ocaml/
前スレ
関数型言語ML(SML, OCaml, etc.), Part 5
http://pc12.2ch.net/test/read.cgi/tech/1186292994/
探検
関数型言語ML (SML, OCaml, etc.), Part 6
■ このスレッドは過去ログ倉庫に格納されています
2009/06/15(月) 07:15:21
370デフォルトの名無しさん
2010/11/11(木) 23:27:02 こんなに人いたんだな
371デフォルトの名無しさん
2010/11/12(金) 00:43:43 305&356です。
私はただの数値計算屋なので、このような助言はありがたい。
型の設定は大切にしています。ただ、研究用のプログラムなの
で、予想外の変更が生じるし、過剰に一般的に作ると使いにくく
なるので、なかなか難しいところです。
いまの問題でゆうと、対象の要素数が100とか1000であれば、
ハッシュを使う選択をしますが、当面の問題では、10以下の
固定個なので、列挙子を使いたい訳です。これは、NJの対話型
環境で式を評価したときに、
列挙子名が表示されるためです。
※NJのハッシュは組み込み型であるvectorほど使いやすくはない
ので、ハッシュを避けがちになるという別の問題はある。
なおUnsafe.castは前にOcamlにはmagicがあるという話が出たの
で、備忘録的に書いただけです。
私はただの数値計算屋なので、このような助言はありがたい。
型の設定は大切にしています。ただ、研究用のプログラムなの
で、予想外の変更が生じるし、過剰に一般的に作ると使いにくく
なるので、なかなか難しいところです。
いまの問題でゆうと、対象の要素数が100とか1000であれば、
ハッシュを使う選択をしますが、当面の問題では、10以下の
固定個なので、列挙子を使いたい訳です。これは、NJの対話型
環境で式を評価したときに、
列挙子名が表示されるためです。
※NJのハッシュは組み込み型であるvectorほど使いやすくはない
ので、ハッシュを避けがちになるという別の問題はある。
なおUnsafe.castは前にOcamlにはmagicがあるという話が出たの
で、備忘録的に書いただけです。
372デフォルトの名無しさん
2010/11/13(土) 19:02:17 SML# 0.60 は大堀先生からアナウンス
373デフォルトの名無しさん
2010/11/13(土) 21:11:23 いらねー
374デフォルトの名無しさん
2010/11/16(火) 01:51:58 ML が研究されているという情報。
それも国内で。
結構なことじゃないの。
それも国内で。
結構なことじゃないの。
375デフォルトの名無しさん
2010/11/17(水) 03:57:12 ようやくMPIを使っての並列起動に成功した……。Intel MPIの32bit版
が使えることのに気付くのにも時間が掛かったが、まさか、.cm/への
書きこみで競合が起こるとは想像だにできなかった。
が使えることのに気付くのにも時間が掛かったが、まさか、.cm/への
書きこみで競合が起こるとは想像だにできなかった。
376デフォルトの名無しさん
2010/12/07(火) 20:39:56 なにこれ?
From: Julian Assange <proff@i...>
Subject: call for ocaml volunteers
http://caml.inria.fr/pub/ml-archives/caml-list/2000/08/6b8b195b3a25876e0789fe3db770db9f.en.html
From: Julian Assange <proff@i...>
Subject: call for ocaml volunteers
http://caml.inria.fr/pub/ml-archives/caml-list/2000/08/6b8b195b3a25876e0789fe3db770db9f.en.html
377デフォルトの名無しさん
2010/12/17(金) 00:13:19 windowsでグラフィックスを扱うライブラリ
としてsml_tkがあるようだが、Posixストラクチャ
とか使っててコンパイルできない。
としてsml_tkがあるようだが、Posixストラクチャ
とか使っててコンパイルできない。
378デフォルトの名無しさん
2011/02/11(金) 13:52:35 standard MLとかって、もう終わった言語なの?
379デフォルトの名無しさん
2011/02/16(水) 22:27:36 NJのバージョンはときどき上がっているようだが、64bit版の開発が着手される
気配はないねぇ。
気配はないねぇ。
380デフォルトの名無しさん
2011/02/17(木) 00:06:39 Objective SML とかあればなあ・・・
381デフォルトの名無しさん
2011/02/17(木) 00:16:06 ええ。
ocamlのobject的な機能って使ってる人いるのかね?
ocamlのobject的な機能って使ってる人いるのかね?
382デフォルトの名無しさん
2011/02/17(木) 00:31:11 Ocaml みたいな奴だったらイラン
383デフォルトの名無しさん
2011/02/27(日) 19:00:35.30 なんでCoqのスレとかないの?
384デフォルトの名無しさん
2011/02/28(月) 06:23:51.79 >>384
あなたやその他の人が誰も立てないから。
あなたやその他の人が誰も立てないから。
385デフォルトの名無しさん
2011/03/02(水) 23:24:04.60 >> 383
先日のRuby会議でCoqの話題が多かったようです。
ttp://partake.in/events/47ccda3b-82d2-4f89-aa83-395a26545b62
先日のRuby会議でCoqの話題が多かったようです。
ttp://partake.in/events/47ccda3b-82d2-4f89-aa83-395a26545b62
386デフォルトの名無しさん
2011/03/03(木) 07:11:19.47 またITプランニングのやつらか!
387デフォルトの名無しさん
2011/03/11(金) 15:27:53.72 「最近、関数型言語が流行ってんだってね?」
私にそう言ったのは、大法螺吹きの異名で名高い営業マン。
もちろん、彼はプログラミングのことは全然知らない。
たぶん関数型言語のこともどっかのポルノ雑誌ででも読んだのだろう。やれやれだ。
「岡村ってのが新しいらしいね。」
なんだよ、その岡村って…。もしかして日本人の開発した関数型言語か?岡村って誰だよ。
「やねさんなら、当然、岡村、使ったことあるよね?」
使ったことあるどころか、名前すら知らんよ。なんだよ、岡村って…。
「あれー?やねさんともあろう御人が、岡村も知らないとは…」
いや、マジで知らんよ。なんなんだよ、それ。
「そうかー。知らないのかー。やねさんでも知らないのかー。」
そう言われて「なんだかなぁ」と思いながら帰ってきて、「関数型言語 岡村」でググって見たけど、そんなの出てこねーよ。
「なんだよ、また、いつもの大法螺かよ!」と思って、布団に入って寝てたら、深夜の三時に、「もしかして、岡村ってOCamlのことじゃね?」と夢のなかで気づいて、いま悔しくて壁を思いっきりグーパンチで殴ってるところ。
私にそう言ったのは、大法螺吹きの異名で名高い営業マン。
もちろん、彼はプログラミングのことは全然知らない。
たぶん関数型言語のこともどっかのポルノ雑誌ででも読んだのだろう。やれやれだ。
「岡村ってのが新しいらしいね。」
なんだよ、その岡村って…。もしかして日本人の開発した関数型言語か?岡村って誰だよ。
「やねさんなら、当然、岡村、使ったことあるよね?」
使ったことあるどころか、名前すら知らんよ。なんだよ、岡村って…。
「あれー?やねさんともあろう御人が、岡村も知らないとは…」
いや、マジで知らんよ。なんなんだよ、それ。
「そうかー。知らないのかー。やねさんでも知らないのかー。」
そう言われて「なんだかなぁ」と思いながら帰ってきて、「関数型言語 岡村」でググって見たけど、そんなの出てこねーよ。
「なんだよ、また、いつもの大法螺かよ!」と思って、布団に入って寝てたら、深夜の三時に、「もしかして、岡村ってOCamlのことじゃね?」と夢のなかで気づいて、いま悔しくて壁を思いっきりグーパンチで殴ってるところ。
388デフォルトの名無しさん
2011/03/11(金) 19:43:34.45 おいおい、岡村!アラン、見ランダ?
Yacc束してたのに、Matlab。
あだー。アラン、隙間フェチ、すから。
見つけるのは一苦労じゃろーね。Sque無い
嗚呼、くっ。一緒にエイダみる予定だったのに・・
遅coqしたら理彩のレイジがMaximaになる
メーリングリストで蓮家等に聞いてミルか
Amigaとう。んじゃ,またAgda!
Orc、またAgdaな
Yacc束してたのに、Matlab。
あだー。アラン、隙間フェチ、すから。
見つけるのは一苦労じゃろーね。Sque無い
嗚呼、くっ。一緒にエイダみる予定だったのに・・
遅coqしたら理彩のレイジがMaximaになる
メーリングリストで蓮家等に聞いてミルか
Amigaとう。んじゃ,またAgda!
Orc、またAgdaな
389デフォルトの名無しさん
2011/03/11(金) 21:16:39.93 おつかれ〜
390デフォルトの名無しさん
2011/03/13(日) 21:05:50.23391デフォルトの名無しさん
2011/04/02(土) 19:12:41.89 >>388
ワロタwww
ワロタwww
392デフォルトの名無しさん
2011/04/04(月) 00:00:15.57 NJのUnsafe.castのあまり意味のない使い道
(fn x => x (Unsafe.cast x)) (fn x => (Unsafe.cast x))
(fn x => x (Unsafe.cast x)) (fn x => (Unsafe.cast x))
393デフォルトの名無しさん
2011/04/04(月) 00:35:09.27 type 'a safe = Safe of ('a safe -> 'a);;
let safe (Safe x) = x;;
print_char((fun x -> safe x x) (Safe (fun x -> safe x x)));;
let safe (Safe x) = x;;
print_char((fun x -> safe x x) (Safe (fun x -> safe x x)));;
394デフォルトの名無しさん
2011/04/05(火) 21:49:01.21395デフォルトの名無しさん
2011/04/14(木) 09:44:35.08 OCamlに興味が湧いてとりあえず五十嵐某の書籍買ってみた。
で、技術書買って真っ先にやることと言えば正誤チェック。
つ・・つかえねぇ・・・この本
誤謬の嵐だぜこりゃw
量がハンパネェ
本として機能してない
残念だがゴミ箱へ
で、技術書買って真っ先にやることと言えば正誤チェック。
つ・・つかえねぇ・・・この本
誤謬の嵐だぜこりゃw
量がハンパネェ
本として機能してない
残念だがゴミ箱へ
396デフォルトの名無しさん
2011/04/14(木) 21:22:48.50 >>395
そんなにひどいの?
そんなにひどいの?
397デフォルトの名無しさん
2011/04/15(金) 00:44:37.03 >>395
うん?
自分にとっては、haskellの学習に大きく寄与したぞ?
コラムの再帰に関する格言と、その本質に言及した言葉が無かったら、関数型言語を挫折してた
(関数型言語の魅力が解らなかっただろう)
自分は、この人にhaskell版を書いて欲しいぞ
今なら言える
手続き型言語は全体的に(それをするには)「どうする」で作り、関数型言語は、全体的に(それは)「何か(あるいは、どんなものか)」で作る言語だと
うん?
自分にとっては、haskellの学習に大きく寄与したぞ?
コラムの再帰に関する格言と、その本質に言及した言葉が無かったら、関数型言語を挫折してた
(関数型言語の魅力が解らなかっただろう)
自分は、この人にhaskell版を書いて欲しいぞ
今なら言える
手続き型言語は全体的に(それをするには)「どうする」で作り、関数型言語は、全体的に(それは)「何か(あるいは、どんなものか)」で作る言語だと
398デフォルトの名無しさん
2011/04/16(土) 12:37:58.03399デフォルトの名無しさん
2011/04/16(土) 12:57:42.57 あれってネット上で読めなかったか
400デフォルトの名無しさん
2011/04/16(土) 13:50:43.61402デフォルトの名無しさん
2011/04/17(日) 20:32:04.80 >>401
両方。誤植も誤謬もある。
http://www.sato.kuis.kyoto-u.ac.jp/~igarashi/OCaml/
技術書でこれだけの間違いがあったら、どうやって本として機能するんだろう?
両方。誤植も誤謬もある。
http://www.sato.kuis.kyoto-u.ac.jp/~igarashi/OCaml/
技術書でこれだけの間違いがあったら、どうやって本として機能するんだろう?
403デフォルトの名無しさん
2011/04/17(日) 21:40:45.30 >>402
そのページ印刷して本に挟んどけよ
そのページ印刷して本に挟んどけよ
404デフォルトの名無しさん
2011/04/17(日) 22:50:12.49 間違いは無いに越したことはないけれど、
これぐらいの量の間違いは大したことないと思う。
これぐらいの量の間違いは大したことないと思う。
405デフォルトの名無しさん
2011/04/17(日) 22:51:29.38 十分大した事あるな
406デフォルトの名無しさん
2011/04/18(月) 00:31:01.42 技術書読んだことあんのか?
407デフォルトの名無しさん
2011/04/18(月) 08:22:14.27 技術書は静的型付けじゃないからな
408デフォルトの名無しさん
2011/04/18(月) 11:08:36.97 コーダとベリファイヤの性能が低い
409デフォルトの名無しさん
2011/04/20(水) 18:55:51.89 > 自分は、この人にhaskell版を書いて欲しいぞ
アマゾンで下のレビュー書いた人かいw
アマゾンで下のレビュー書いた人かいw
410デフォルトの名無しさん
2011/04/20(水) 20:57:40.94 ちょっと困っていることがあるので、助けてください。
ヨウ素がリストの参照になっているようなベクトルを用意して、各要素に
データを追記していくような処理をさせると(具体的には、複数の時系列を記録
したファイルがあって、これを時間順に読む)、追記回数の自乗のオーダの
処理時間が掛る。リストの先頭に追加しているだけなので、線形時間でやって
ほしい。
ヨウ素がリストの参照になっているようなベクトルを用意して、各要素に
データを追記していくような処理をさせると(具体的には、複数の時系列を記録
したファイルがあって、これを時間順に読む)、追記回数の自乗のオーダの
処理時間が掛る。リストの先頭に追加しているだけなので、線形時間でやって
ほしい。
411デフォルトの名無しさん
2011/04/20(水) 20:58:06.52 (* コード例)
val bigV = Vector.tabulate(1000000, fn _ => ref (nil:int list))
val dat = Vector.tabulate(1000000, fn i => i)
val t0 = Time.now();
val tLast = ref (Time.-(t0,t0));
fun showTime() = let
val tLast' = !tLast
val () = tLast := Time.- (Time.now(), t0)
val dt = Time.-(!tLast, tLast')
in
Time.toString (!tLast)^","^ Time.toString dt
end
fun append k =
(print (Int.toString k ^ "," ^ showTime()^ "\n")
;Vector.app (fn box => box := k :: !box) bigV
)
val () = Vector.app append dat
val bigV = Vector.tabulate(1000000, fn _ => ref (nil:int list))
val dat = Vector.tabulate(1000000, fn i => i)
val t0 = Time.now();
val tLast = ref (Time.-(t0,t0));
fun showTime() = let
val tLast' = !tLast
val () = tLast := Time.- (Time.now(), t0)
val dt = Time.-(!tLast, tLast')
in
Time.toString (!tLast)^","^ Time.toString dt
end
fun append k =
(print (Int.toString k ^ "," ^ showTime()^ "\n")
;Vector.app (fn box => box := k :: !box) bigV
)
val () = Vector.app append dat
412デフォルトの名無しさん
2011/04/20(水) 21:15:18.30 ヨウ素とかベクレルの話かとオモタ
413sage
2011/04/20(水) 21:46:08.88 辞書(と見逃した自分も)がそっち方向に過学習してしまったらしい。すまん。
414デフォルトの名無しさん
2011/04/21(木) 00:19:44.70 自分の環境ではサンプルプログラムの実行に二乗オーダは見られなかった。
bigVの大きさを一桁下げると速度がぐっと変わるし、GCとかのせいな気がする。
bigVの大きさを一桁下げると速度がぐっと変わるし、GCとかのせいな気がする。
415デフォルトの名無しさん
2011/04/26(火) 20:50:17.84 SMLの勉強していて思ったけど、最初に学ぶ言語として関数型言語はやはり難しいかも知れない。
C言語だとHello Worldから始まって、リスト処理は構造体とポインタの応用問題という位置づけだった。
SMLはいきなりリストと再帰の話から始まるw
BASICは、LISPよりも後から開発されて、しかも同じダートマス大学発祥だけど、
リスト処理が実装されていないのもそれなりの理由があったのかなと思う。
C言語だとHello Worldから始まって、リスト処理は構造体とポインタの応用問題という位置づけだった。
SMLはいきなりリストと再帰の話から始まるw
BASICは、LISPよりも後から開発されて、しかも同じダートマス大学発祥だけど、
リスト処理が実装されていないのもそれなりの理由があったのかなと思う。
416デフォルトの名無しさん
2011/04/26(火) 21:56:29.55 奥さん、そこで Factorですよ。
417デフォルトの名無しさん
2011/04/26(火) 22:12:07.58 >>415
> BASICは、LISPよりも後から開発されて、しかも同じダートマス大学発祥だけど、
> リスト処理が実装されていないのもそれなりの理由があったのかなと思う。
LISPとBASICじゃ作られた目的が全然違う
それに当時の計算機の性能ではリスト処理は時間的にもメモリ的にも大変重い処理だった
今の感覚や価値観は60年代の計算機や言語・ソフトの評価や判断には全く通用しない
> BASICは、LISPよりも後から開発されて、しかも同じダートマス大学発祥だけど、
> リスト処理が実装されていないのもそれなりの理由があったのかなと思う。
LISPとBASICじゃ作られた目的が全然違う
それに当時の計算機の性能ではリスト処理は時間的にもメモリ的にも大変重い処理だった
今の感覚や価値観は60年代の計算機や言語・ソフトの評価や判断には全く通用しない
418デフォルトの名無しさん
2011/04/27(水) 00:17:49.66 最初は易しい言語で、ってことが重要に思えるところ、
その信念に基づいた妄想を長々と書きこむところ、
これはその人の性質をよく表していると思う。
こういうひとのためにも緩い言語は必要。
ML系はそういうのとは全然違う。
その信念に基づいた妄想を長々と書きこむところ、
これはその人の性質をよく表していると思う。
こういうひとのためにも緩い言語は必要。
ML系はそういうのとは全然違う。
419デフォルトの名無しさん
2011/04/27(水) 14:00:52.81 >> 415
ポインタ+構造体+慎重な操作を免除して、いきなりリストが使えるのが
売りだと思うのだけれど。
また、MLは破壊的代入+whileループが特別な儀式をしなくても使えるの
で、再帰を学ばなくてもある程度は使える。
ポインタ+構造体+慎重な操作を免除して、いきなりリストが使えるのが
売りだと思うのだけれど。
また、MLは破壊的代入+whileループが特別な儀式をしなくても使えるの
で、再帰を学ばなくてもある程度は使える。
420デフォルトの名無しさん
2011/05/18(水) 01:03:29.10 眉間のτとλ皺が特徴。
やつを追う前に言っておくッ!
おれは今やつのStateTをほんのちょっぴりだが体験した
い…いや…体験したというよりはまったく理解を超えていたのだが……
,. -‐'''''""¨¨¨ヽ
(.___,,,... -ァァフ| あ…ありのまま 今 起こった事を話すぜ!
|i i| }! }} //|
|l、{ j} /,,ィ//| 『おれは奴の前で階層を lift していたと
i|:!ヾ、_ノ/ u {:}//ヘ 思ったらいつのまにか lift が消えていた』
|リ u' τ ,ノ _,!V,ハ |
/´fト、_{λ{,ィ'eラ , タ人 な… 何を言ってるのか わからねーと思うが
/' ヾ|宀| {´,)⌒`/ |<ヽトiゝ おれも何をされたのかわからなかった…
,゙ / )ヽ iLレ u' | | ヾlトハ〉
|/_/ ハ !ニ⊇ '/:} ∀:::ヽ 頭がどうにかなりそうだった…
// 二二二7'T'' /u' __ /:::::::/`ヽ
/'´r -―一ァ‐゙T´ '"´ /::::/-‐ \ キャストだとかサブタイピングだとか
/ // 广¨´ /' /:::::/´ ̄`ヽ ⌒ヽ そんなチャチなもんじゃあ 断じてねえ
ノ ' / ノ:::::`ー-、___/:::::// ヽ }
_/`丶 /:::::::::::::::::::::::::: ̄`ー-{:::... イ もっと恐ろしいものの片鱗を味わったぜ…
やつを追う前に言っておくッ!
おれは今やつのStateTをほんのちょっぴりだが体験した
い…いや…体験したというよりはまったく理解を超えていたのだが……
,. -‐'''''""¨¨¨ヽ
(.___,,,... -ァァフ| あ…ありのまま 今 起こった事を話すぜ!
|i i| }! }} //|
|l、{ j} /,,ィ//| 『おれは奴の前で階層を lift していたと
i|:!ヾ、_ノ/ u {:}//ヘ 思ったらいつのまにか lift が消えていた』
|リ u' τ ,ノ _,!V,ハ |
/´fト、_{λ{,ィ'eラ , タ人 な… 何を言ってるのか わからねーと思うが
/' ヾ|宀| {´,)⌒`/ |<ヽトiゝ おれも何をされたのかわからなかった…
,゙ / )ヽ iLレ u' | | ヾlトハ〉
|/_/ ハ !ニ⊇ '/:} ∀:::ヽ 頭がどうにかなりそうだった…
// 二二二7'T'' /u' __ /:::::::/`ヽ
/'´r -―一ァ‐゙T´ '"´ /::::/-‐ \ キャストだとかサブタイピングだとか
/ // 广¨´ /' /:::::/´ ̄`ヽ ⌒ヽ そんなチャチなもんじゃあ 断じてねえ
ノ ' / ノ:::::`ー-、___/:::::// ヽ }
_/`丶 /:::::::::::::::::::::::::: ̄`ー-{:::... イ もっと恐ろしいものの片鱗を味わったぜ…
421デフォルトの名無しさん
2011/06/08(水) 22:38:54.29 保守
422デフォルトの名無しさん
2011/06/20(月) 02:35:53.95 Ocamlとか関数型言語とか難しいことはよくわからないが
ターミナルでTwitterクライアントが動くらしいので
Ocamltterに手を出してみる。
そういえば親父がLISP好きだったのを思い出す。
ターミナルでTwitterクライアントが動くらしいので
Ocamltterに手を出してみる。
そういえば親父がLISP好きだったのを思い出す。
423デフォルトの名無しさん
2011/06/20(月) 02:43:18.06 フランス人と日本人って意外に共通点があるよな
424デフォルトの名無しさん
2011/06/20(月) 02:48:34.90 皇女様をギロチンにかけたりな
425デフォルトの名無しさん
2011/06/20(月) 07:42:00.20 OcamltterあきらめてOcaml入門やってるんだが再起呼び出しとかちょっと難しいな。
for文と違う。
数学者にやらせると面白いことになりそうな謎のワクワク感を感じる言語ではある。
for文と違う。
数学者にやらせると面白いことになりそうな謎のワクワク感を感じる言語ではある。
426デフォルトの名無しさん
2011/06/30(木) 22:40:46.75 みんな Haskell に移行してしまったんかいなぁ
427天使 ◆uL5esZLBSE
2011/07/05(火) 04:45:54.85 2011年、Ruby,Perl,PHP,Pythonって並べたときにさ
ここで、Ruby以外を選ぶ奴ってマジでなんなんだろうな
ゴミの分際でw
ここで、Ruby以外を選ぶ奴ってマジでなんなんだろうな
ゴミの分際でw
428デフォルトの名無しさん
2011/07/05(火) 11:37:20.29 >>427
科学計算を主に念頭においてるものだったら、Python一択になってくるよ。
それだけライブラリが充実している。scipy,numpy,matplotlib,mayaviなんて
のがあるからね。
>>415
手続き脳から見れば当然難しいけど、数学の漸化式を知ってれば再帰は
馴染みやすいし問題ないよ。難しくしてるのは頭の中で無理やり手続き型
に想定して理解しようとする癖があるからだよ。手続き型に染まった連中が
苦労するのはその悪癖が抜けないから。
リストとか関数の取り扱い(Cでいうと関数ポインタだな。)は手続きにとって
みれば高嶺の花だけど、そこが一番簡単にさせている要因なんだよね。
手続きに染まった人ってただ頭が硬直しただけなんだよ。
科学計算を主に念頭においてるものだったら、Python一択になってくるよ。
それだけライブラリが充実している。scipy,numpy,matplotlib,mayaviなんて
のがあるからね。
>>415
手続き脳から見れば当然難しいけど、数学の漸化式を知ってれば再帰は
馴染みやすいし問題ないよ。難しくしてるのは頭の中で無理やり手続き型
に想定して理解しようとする癖があるからだよ。手続き型に染まった連中が
苦労するのはその悪癖が抜けないから。
リストとか関数の取り扱い(Cでいうと関数ポインタだな。)は手続きにとって
みれば高嶺の花だけど、そこが一番簡単にさせている要因なんだよね。
手続きに染まった人ってただ頭が硬直しただけなんだよ。
429デフォルトの名無しさん
2011/07/05(火) 11:40:45.99 ファーストクラスの関数を、関数ポインタのようなもの、とかいうのは、
誤解を招くだけでないかな。
誤解を招くだけでないかな。
430デフォルトの名無しさん
2011/07/05(火) 12:09:28.96 >>429
じゃあどう簡潔に言えばいいか示してくれ。それだけでいいよ。
じゃあどう簡潔に言えばいいか示してくれ。それだけでいいよ。
431デフォルトの名無しさん
2011/07/05(火) 12:14:26.97 「ファーストクラスの関数」
432デフォルトの名無しさん
2011/07/05(火) 12:20:26.45 >>431
手続き脳の人相手に話をする場合、それで通じれば問題がないけど
彼らの試行の中で比較的近いものを取り上げて説明しようとしないと
たぶん、言葉が通じないと思うよ。CS専攻の連中相手に話をするならば
それで問題はないよ。もし知らなければ不勉強だってことだからさ。
手続き脳の人相手に話をする場合、それで通じれば問題がないけど
彼らの試行の中で比較的近いものを取り上げて説明しようとしないと
たぶん、言葉が通じないと思うよ。CS専攻の連中相手に話をするならば
それで問題はないよ。もし知らなければ不勉強だってことだからさ。
433デフォルトの名無しさん
2011/07/05(火) 19:57:30.54 環境をキャプチャした関数ポインタのようなもの?
434デフォルトの名無しさん
2011/07/05(火) 20:12:36.48 それはもうポインタでも何でもねぇw
クロージャは、下手にCの概念で説明するよりは、定義をしっかり伝えたほうが、
相手に伝わりやすい代表例じゃないかな。モナドとか継続とかと一緒で。
クロージャは、下手にCの概念で説明するよりは、定義をしっかり伝えたほうが、
相手に伝わりやすい代表例じゃないかな。モナドとか継続とかと一緒で。
435デフォルトの名無しさん
2011/07/05(火) 20:37:31.44 一応Cでもgcc拡張ならクロージャはある
C++ユーザならC++用語で言うファンクタ(関数オブジェクト)を結構使うはずなので、
ただの関数ポインタとの違いはわかっていると思う
クロージャが近いのは勿論ファンクタのほうだけど、C++のようにいちいち
classやstructでそれを記述する必要がない
もっともC++のそれがあまりに面倒くさかったので、C++でも0xでついにlambdaが
導入されたわけだけど
C++ユーザならC++用語で言うファンクタ(関数オブジェクト)を結構使うはずなので、
ただの関数ポインタとの違いはわかっていると思う
クロージャが近いのは勿論ファンクタのほうだけど、C++のようにいちいち
classやstructでそれを記述する必要がない
もっともC++のそれがあまりに面倒くさかったので、C++でも0xでついにlambdaが
導入されたわけだけど
436デフォルトの名無しさん
2011/07/07(木) 11:04:09.84 他のスレでやれ
437デフォルトの名無しさん
2011/07/07(木) 13:02:54.88 >>427
誤爆?
誤爆?
438デフォルトの名無しさん
2011/07/09(土) 19:06:45.30 >>435
>一応Cでもgcc拡張ならクロージャはある
nested function の事なら、内部関数から参照している変数のスコープの
外からは使えないのでクローズしているとは言えないんじゃないかな。
http://gcc.gnu.org/onlinedocs/gcc/Nested-Functions.html
C なら Blocks を使う方が良さそう。
>一応Cでもgcc拡張ならクロージャはある
nested function の事なら、内部関数から参照している変数のスコープの
外からは使えないのでクローズしているとは言えないんじゃないかな。
http://gcc.gnu.org/onlinedocs/gcc/Nested-Functions.html
C なら Blocks を使う方が良さそう。
439デフォルトの名無しさん
2011/07/12(火) 19:45:27.51440デフォルトの名無しさん
2011/07/12(火) 20:32:45.49 >>439
環境を保存しておいてくれる訳じゃないからね
環境を保存しておいてくれる訳じゃないからね
441デフォルトの名無しさん
2011/07/12(火) 22:06:56.99 >>440 なるほど。危険ではあるが役に立つかも知れないから機能は提供する
ということか。
ということか。
442デフォルトの名無しさん
2011/07/30(土) 19:06:44.85 OCamlにしようか、それともHaskellにしようか迷ってます。
こういう用途ならこっちのほうがいいとか、なんかアドバイスお願いします。
こういう用途ならこっちのほうがいいとか、なんかアドバイスお願いします。
443デフォルトの名無しさん
2011/07/30(土) 19:45:47.15 >>442
では、用途を教えてくだしあ
では、用途を教えてくだしあ
444デフォルトの名無しさん
2011/07/30(土) 20:08:56.47 >>443
こーいうやつはプログラミングの勉強自体が目的だろ。
こーいうやつはプログラミングの勉強自体が目的だろ。
445デフォルトの名無しさん
2011/07/30(土) 20:16:25.35446デフォルトの名無しさん
2011/07/30(土) 20:42:08.59447デフォルトの名無しさん
2011/07/30(土) 20:52:58.37 >>446
勉強ってことだし、関数な考え方を得ようってなら純粋なHaskellの方を推奨
勉強ってことだし、関数な考え方を得ようってなら純粋なHaskellの方を推奨
448デフォルトの名無しさん
2011/07/30(土) 20:54:22.93 勉強自体が目的ならなんで両方やらないのっていう
449デフォルトの名無しさん
2011/07/30(土) 20:56:02.64 あと入門用に、英語読めるなら、比較的平易な英文で書いてある
http://learnyouahaskell.com/
を挙げておきます。下の方にあるonlineを選ぶと、売っているものに近い内容が読めますよ。
http://learnyouahaskell.com/
を挙げておきます。下の方にあるonlineを選ぶと、売っているものに近い内容が読めますよ。
450デフォルトの名無しさん
2011/07/30(土) 21:05:00.48 OCamlの入門書が1冊、Haskellの入門書が数冊出てるからどれか1つ、
とりあえず借りるか買うかして、それぞれ第1章ぐらいやってみなさい。
とりあえず借りるか買うかして、それぞれ第1章ぐらいやってみなさい。
451デフォルトの名無しさん
2011/07/30(土) 21:05:33.97 >>446
関数型言語の特徴が余す事なく取り入れられてる
モナドは使う分には難しくない
使う分にはシンプル イズ ベストな書き方がやり易い言語
モナドを分からないと使えるようにならないと勘違いして脱落する人多いけど、モナドの理論的背景を理解する必要は無い
気になるなら気長に勉強しなされ
OCamlはループも有るし、副作用対策諦めてるし、手続き型言語に限りなく近い関数型言語って感じ
速いコード吐けるけど、昨今の関数型言語の特徴取り入れた手続き型言語が多い時代に勉強する意味は薄い
関数型言語の特徴が余す事なく取り入れられてる
モナドは使う分には難しくない
使う分にはシンプル イズ ベストな書き方がやり易い言語
モナドを分からないと使えるようにならないと勘違いして脱落する人多いけど、モナドの理論的背景を理解する必要は無い
気になるなら気長に勉強しなされ
OCamlはループも有るし、副作用対策諦めてるし、手続き型言語に限りなく近い関数型言語って感じ
速いコード吐けるけど、昨今の関数型言語の特徴取り入れた手続き型言語が多い時代に勉強する意味は薄い
452デフォルトの名無しさん
2011/07/30(土) 21:07:10.73 手続きばっかだっし、古典のschemeでいいんじゃねーの?
453デフォルトの名無しさん
2011/07/30(土) 21:10:08.69 Lisp族はLisp族で悪くないけど、関数型プログラミングを今時勉強するならその選択はない。
454デフォルトの名無しさん
2011/07/30(土) 21:16:22.99455デフォルトの名無しさん
2011/07/30(土) 21:20:58.25 >>449
haskellスレで翻訳中って聞いたぞ
あと、kindleでサンプル読んだ限りじゃプログラミングhaskellの内容を砕けた言葉とイラストで書いてるだけに見える
内容的にはすでに翻訳されてるプログラミングhaskellで十分
haskellスレで翻訳中って聞いたぞ
あと、kindleでサンプル読んだ限りじゃプログラミングhaskellの内容を砕けた言葉とイラストで書いてるだけに見える
内容的にはすでに翻訳されてるプログラミングhaskellで十分
456デフォルトの名無しさん
2011/07/30(土) 21:28:52.08 みなさん、ありがとうございます。
OCamlスレなのにHaskell勧める人ばかりなので、OCamlに未練はあるけど、思い切ってHaskellやってみようと思います。
OCamlスレなのにHaskell勧める人ばかりなので、OCamlに未練はあるけど、思い切ってHaskellやってみようと思います。
457デフォルトの名無しさん
2011/07/30(土) 21:34:22.91458デフォルトの名無しさん
2011/07/30(土) 21:36:14.27 >>456
俺はHaskell→OCamlと来た。
どっち先でもいいし、両方やればいいんじゃないだろうか。
片方しかやっちゃいけない決まりはないんだし。
面白いことは何でもやるべきだよ。
ミニ四駆だって、マグナムセイバーを買う傍ら、ソニックセイバーも買っただろ。それと同じ。
俺はHaskell→OCamlと来た。
どっち先でもいいし、両方やればいいんじゃないだろうか。
片方しかやっちゃいけない決まりはないんだし。
面白いことは何でもやるべきだよ。
ミニ四駆だって、マグナムセイバーを買う傍ら、ソニックセイバーも買っただろ。それと同じ。
459デフォルトの名無しさん
2011/07/30(土) 22:15:41.84 そんなことはどうでもいい。OCamlのサイトが404だ。
http://caml.inria.fr/ocaml
http://caml.inria.fr/ocaml
460デフォルトの名無しさん
2011/07/30(土) 23:17:43.26 げ、ほんとだ
461デフォルトの名無しさん
2011/07/30(土) 23:23:32.07462デフォルトの名無しさん
2011/07/30(土) 23:29:26.27 ついにオワコンか
463デフォルトの名無しさん
2011/07/30(土) 23:50:18.39 OCamlがOCamlとして生まれ変わった際のゴタゴタだそうだよ
464デフォルトの名無しさん
2011/07/31(日) 21:38:50.21 http://twitter.com/#!/camlspotter/status/97519093602717696
>描いたのは俺!
>RT @y_echo
>RT @kinaba: なにがあったのwww
>RT @kikx これは変わりすぎだろ!
>RT @yoshihiro503 ちょ、 OCaml のサイトが激しくイメチェンしてる caml.inria.fr
>描いたのは俺!
>RT @y_echo
>RT @kinaba: なにがあったのwww
>RT @kikx これは変わりすぎだろ!
>RT @yoshihiro503 ちょ、 OCaml のサイトが激しくイメチェンしてる caml.inria.fr
465デフォルトの名無しさん
2011/08/01(月) 08:56:35.19 OCamlってもう手に入らないん?
466デフォルトの名無しさん
2011/08/01(月) 10:15:28.29 >>465
http://twitter.com/#!/camlspotter/status/97683309177475073
>一つだけ皆さんに言っておきます。毎年この時期には OCaml には何かが起きます。
>それはリア充関係者がバカンスに行ってしまって連絡が取れなくなるからです。
> RT @ytomino ocamlがついに滅んだと聞いて(遅い
http://twitter.com/#!/camlspotter/status/97685810127716353
>てか週末にサーバ不調になったら48時間止まるのあたりまえやろ?人間として。
http://twitter.com/#!/camlspotter/status/97686190618181632
>と haskell.org が落ちたときには wktk してた人が言っても説得力ありませんな
とりあえずフランスの月曜日昼(日本時間21時ごろ)まで待ちましょう。
それまでに復旧しなければ長期化確定ですね。
http://twitter.com/#!/camlspotter/status/97683309177475073
>一つだけ皆さんに言っておきます。毎年この時期には OCaml には何かが起きます。
>それはリア充関係者がバカンスに行ってしまって連絡が取れなくなるからです。
> RT @ytomino ocamlがついに滅んだと聞いて(遅い
http://twitter.com/#!/camlspotter/status/97685810127716353
>てか週末にサーバ不調になったら48時間止まるのあたりまえやろ?人間として。
http://twitter.com/#!/camlspotter/status/97686190618181632
>と haskell.org が落ちたときには wktk してた人が言っても説得力ありませんな
とりあえずフランスの月曜日昼(日本時間21時ごろ)まで待ちましょう。
それまでに復旧しなければ長期化確定ですね。
467デフォルトの名無しさん
2011/08/01(月) 10:34:00.78468デフォルトの名無しさん
2011/08/01(月) 22:02:08.55 >>466
直らんね。もうしばらく待つか。
直らんね。もうしばらく待つか。
469デフォルトの名無しさん
2011/08/01(月) 22:10:14.76 復活したね
470デフォルトの名無しさん
2011/08/02(火) 18:02:01.87 Lisp族はいいぞ。でもclojureを触っているとhaskellの影響がかなり大きい。
ocamlも触ってみたいけど、いまHaskell勉強中なんだ。たぶん、来年くらいには
やれればな。HaskellってLispと同じでプログラム作成までの抽象化も含めた
戦略を練るのに時間がかかる言語って感じがしました。Ocamlも同じなんだろうね。
ocamlも触ってみたいけど、いまHaskell勉強中なんだ。たぶん、来年くらいには
やれればな。HaskellってLispと同じでプログラム作成までの抽象化も含めた
戦略を練るのに時間がかかる言語って感じがしました。Ocamlも同じなんだろうね。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★2 [ぐれ★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 新米の予想収穫量、1割増 746万8000トン―農水省 [蚤の市★]
- 高市「発言は撤回しない。謝罪もするな。外務省局長!任せたぞ。」👈なにをさせたかったの?😲 [826239858]
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 【悲報】『岡田が日和って逃げたのに高市が自分から突っ込んだ発言をして自爆した』⬅国会答弁、実際はこれだった…… [158478931]
- 自分に自信がない女の子、陽キャ美容室で80cmのエクステを付けた結果wwwwwwwwwwwwwwwwwww [329329848]
- 【実況】博衣こよりのえちえち歌枠🧪
- 外務省局長、よくわからないまま帰国へ [834922174]
