1 名前:デフォルトの名無しさん mailto:sage [2009/06/15(月) 07:15:21 .net] 関数型言語MLについて語るスレッドです。 MLは、確固とした理論的背景を持つ言語でありながら、 現実的なソフトの開発にも使用できる実用性を備えた言語です。 また、プログラミングの初心者が最初に学習する言語としても優れています。 総本山 Standard ML www.smlnj.org/ Objective Caml caml.inria.fr/ocaml/ 前スレ 関数型言語ML(SML, OCaml, etc.), Part 5 pc12.2ch.net/test/read.cgi/tech/1186292994/
978 名前:デフォルトの名無しさん [2017/06/09(金) 13:37:56.60 ID:3OdcZ+id.net] fact 0 = 1 fact n = n * (fact (n-1)) だと,fact (n-1)の再帰呼出の後で nとの掛け算を しなければならない.計算の最後(=末尾)が再帰では なく乗算となる. fact2 0 n = n fact2 n k = fact2 (n-1) (n*x) として fact1 n = fact2 n 1 としておけば,fact2の計算の最後はfact2の 再帰呼出で,callをgotoに変えたループで実行できる. こんな感じでイメージできる?
979 名前:デフォルトの名無しさん mailto:sage [2017/06/09(金) 14:50:46.84 ID:rw1qC18c.net] f_outer(n){ f_inner(n, accumulator){ if 1 == n accumulator else f_inner(n - 1, n * accumulator) } } accumulator に蓄積すれば?
980 名前:965 mailto:sage [2017/06/09(金) 14:56:24.07 ID:rw1qC18c.net] f_outer(n){ f_inner(n, accumulator){ if 1 == n accumulator else f_inner(n - 1, n * accumulator) } return f_inner(n, 0) } 修正。 内部関数を、return するのが抜けていた
981 名前:デフォルトの名無しさん mailto:sage [2017/06/09(金) 16:51:44.77 ID:VCuqCK40.net] おおおわかった気がする ありがとう! なんでも再起とやらも読んで見ることにする
982 名前:デフォルトの名無しさん [2017/06/09(金) 17:05:35.04 ID:3Dqy8l+L.net] >>968 return f_inner(n, 1) じゃない?
983 名前:デフォルトの名無しさん mailto:sage [2017/06/25(日) 18:30:26.47 ID:v1ZjLLZV.net] OcamlとかCoqって名古屋以外でも大学での授業とか研究に使われているの? 一時期のブームは去ったみたいだけど。 大学の情報学部とかの現状にはちょっとだけ興味がある。 そして流行に後れて今頃勉強している40代のオレ。
984 名前:デフォルトの名無しさん mailto:sage [2017/07/03(月) 09:21:46.88 ID:ipQv+IYB.net] 東大東北大お茶の水では使ってた
985 名前:デフォルトの名無しさん mailto:sage [2017/07/03(月) 17:44:24.93 ID:/M1wO8+Z.net] 授業で使ったのに広まらなかったということか。 つまり啓蒙に失敗したと。
986 名前:デフォルトの名無しさん mailto:sage [2017/07/04(火) 13:46:26.44 ID:VgVQ93XC.net] Occamなら知っとるぞよ?
987 名前:デフォルトの名無しさん mailto:sage [2017/07/12(水) 14:21:04.56 ID:06OhWRFP.net] >973 広まらなかったというかキラーアプリがなかったというか… 結局Ocamlで作られたアプリで唯一プログラマ間で流行ったのがCoqなんじゃね?
988 名前:デフォルトの名無しさん mailto:sage [2017/07/12(水) 14:33:02.68 ID:bLDjTsNM.net] OCaml は金融とかで使われてるんじゃ無かったか。 そういや Rust も最初は OCaml でコンパイラー書かれてたんだよな。
989 名前:デフォルトの名無しさん mailto:sage [2017/07/14(金) 23:08:50.92 ID:UJz0OWoz.net] 俺がocaml覚えたきっかけはとあるエロゲーのチートツールなんだが あれの作者がなぜそれを採用したかにはずごい興味ある
990 名前:デフォルトの名無しさん mailto:sage [2017/07/15(土) 12:06:36.80 ID:03i9G/wL.net] >>977 どっかの学生だったんじゃないの?兄妹ものエロゲだけに京大とか。
991 名前:デフォルトの名無しさん mailto:sage [2017/08/16(水) 21:00:55.34 ID:H/HIEf+2.net] (*´・ω・`*)
992 名前:デフォルトの名無しさん mailto:sage [2017/08/17(木) 13:02:39.82 ID:5mQoD0+b.net] (´・ω・`)
993 名前:デフォルトの名無しさん mailto:sage [2017/09/01(金) 18:43:59.45 ID:RxXe6GrD.net] 8月はちょっと纏まった時間がとれたので、 「ソフトウェアの基礎」日本語訳の練習問題を解きすすめてみた。 まだPoly.vが終わった序盤だけどだいぶCoqに慣れてきた。 星三つrecommendedでもたまに難しい問題があるなー、というのが感想。 論理学の命題というのは高校・大学教育で慣れているだけで 見直してみると思ったよりも複雑な構造をしていたのだと今更ながらに感じた。 実務でCoqが要求されることは当分ないと思うけど、 逆変換の関数は少なからず実装することがあるので ときどき「Coq使って証明したい」という気分にはなるんだよなー。
994 名前:デフォルトの名無しさん mailto:sage [2017/09/05(火) 11:03:28.55 ID:a/Cb1ZW9.net] ocaml.jp/ 死んでるな…… > ( ! ) Parse error: syntax error, unexpected 'new' (T_NEW) in /virtual/osiire/public_html/lib/func.php on line 531
995 名前:デフォルトの名無しさん mailto:sage [2017/09/08(金) 14:02:07.35 ID:swD2wqBn.net] ocaml.jpは息してる?
996 名前:デフォルトの名無しさん mailto:sage [2017/09/24(日) 12:35:45.27 ID:VL5Szw+L.net] いつまで死んでるんだよ
997 名前:デフォルトの名無しさん mailto:sage [2017/10/03(火) 00:31:09.35 ID:JZnIdnEQ.net] 復活した
998 名前:デフォルトの名無しさん mailto:sage [2017/10/03(火) 02:20:47.65 ID:upqeSfz9.net] 復活したのは良いけど、一言何か無いのかよ。誰が管理してるんだ。
999 名前:979 mailto:sage [2017/10/05(木) 12:08:08.18 ID:SZzrAZT5.net] 日本語訳の古さに苦戦しつつLogic.vまで進めていたところ…… 久しぶりに英語の本家を見たら、 なんかVol.1 〜 Vol.3に増えてるー!? あまりの道のりの遠さに絶望しつつ内容を見ると、 旧版からホーア理論まわりをVol..2に分離し、 Vol.3は赤黒木等の少し高度なデータ構造について色々とCoqで証明して感じらしい(新規)。 ……く、面白そうじゃないか。
1000 名前:デフォルトの名無しさん mailto:sage [2017/10/05(木) 19:45:51.56 ID:72rIdNeW.net] >>981 リンクpls
1001 名前:デフォルトの名無しさん mailto:sage [2017/10/07(土) 12:06:25.63 ID:689sKi0/.net] >>988 https://softwarefoundations.cis.upenn.edu/
1002 名前:979 mailto:sage [2017/10/30(月) 19:39:25.32 ID:asGH9s/c.net] ここ一ヶ月、旧くなった日本語版を捨て英語版に再挑戦してみた。 以前は出来るだけ写経していたが時間がかかり過ぎるので、 付属の.vファイルを直接書き換える方針に変更。 結構章立てと共に内容変わってるなぁ……追加された良問も多いし。 英語の非形式的証明は書く機会もなさそうだし、パスするか。 しかし、答えがWeb上に転がってないのは自習者には正直辛い。 どうもSICPみたいな標準教科書を目指してるっぽい? こーゆうの(coq)を国立研究所で作れる国はやっぱり凄いと思う今日この頃。
1003 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:27:01.78 ID:wuKEf1Sh.net] a
1004 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:27:36.60 ID:wuKEf1Sh.net] sit
1005 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:27:56.41 ID:wuKEf1Sh.net] dot
1006 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:28:13.79 ID:wuKEf1Sh.net] egg
1007 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:28:31.25 ID:wuKEf1Sh.net] nø
1008 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:28:48.81 ID:wuKEf1Sh.net] this
1009 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:29:26.33 ID:wuKEf1Sh.net] combi
1010 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:30:08.09 ID:wuKEf1Sh.net] it
1011 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:30:42.85 ID:wuKEf1Sh.net] 2
1012 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:31:16.98 ID:wuKEf1Sh.net] ping
1013 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:32:05.81 ID:wuKEf1Sh.net] pong
1014 名前:デフォルトの名無しさん mailto:sage [2017/11/01(水) 07:32:32.73 ID:wuKEf1Sh.net] wild
1015 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 3061日 0時間 17分 11秒
1016 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています