[表示 : 全て 最新50 1-99 101- 2ch.scのread.cgiへ]
Update time : 02/14 16:21 / Filesize : 55 KB / Number-of Response : 178
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

次世代言語議論スレ【Go Rust Haskell Scala Erlang Elixir】 第二世代



1 名前:デフォルトの名無しさん mailto:sage [2017/02/11(土) 21:32:37.61 ID:0GjTSBdX.net]
いざ、語ろうぞ。

前スレ
次世代言語議論スレ【Go Rust Haskell Scala Erlang Elixir】 [無断転載禁止]©2ch.net
echo.2ch.net/test/read.cgi/tech/1479434349/

128 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 16:28:13.09 ID:AmcZDedG.net]
今までの歴史からして遠からずPythonすら置き換わる汎用言語も出るだろうけどどんなだろうな
まったく違うパラダイムだろうか

129 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 17:10:45.69 ID:X/RmwKxM.net]
関数だけを使う関数型言語っていうのは初めにあって、
次にそれをパワーアップさせてリストだけを使うリスト型言語が出来て
次にそれをパワーアップさせてオブジェクトだけを使うオブジェクト型言語
ができたんだからオブジェクト型が今のところ最先端だな。
次のパラダイムは何か新しい一つの物だけを使った言語だと思うな。

130 名前:デフォルトの名無しさん [2017/02/13(月) 18:31:51.83 ID:lgjAPN1q.net]
>>129
マルチパラダイム言語ディスってんの?

131 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 19:18:42.74 ID:HSaRDCl9.net]
>>129
某ゲームメーカーの昔のCMネタで書き込んだだけなのに、こうやって釣れるんだよな。

ネットのOOP解説関連のHPも、頭悪い人間や旧世代を見下してるの多いし、
同じことを歴史を繰り返して関数型にやられてるだけじゃん。

132 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 19:26:15.09 ID:l1N3ICNN.net]
関数の中に関数を書くっていう関数型が初めにあったとすると
クラスの中に関数を書くっていうのは別にパワーアップしてない
粉飾パワー系

133 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 19:27:22.92 ID:MQ2CnNxG.net]
因果は巡るのじゃw

134 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 19:41:12.63 ID:X/RmwKxM.net]
>>132
オブジェクト型はオブジェクトの中にオブジェクトを書くんだよ。
メソッドはオブジェクトのインターフェイスでオブジェクトの一部として考えられる
オブジェクトのコアの中にオブジェクトが入って外部から遮断されてる。

135 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 19:51:42.41 ID:zwnL86Oa.net]
OOP言語のJavaで作られたものは数あれど、
関数型言語のHaskellで作られたものって何があるん?

136 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 20:02:53.28 ID:l1N3ICNN.net]
人間が作ったものは人間の手柄
それを巧妙なマウンティングで言語の手柄にされてしまう
更に言語の上にパラダイムが乗っかってパラダイムの手柄になる



137 名前:デフォルトの名無しさん [2017/02/13(月) 20:06:34.96 ID:SRrzQdIe.net]
129はなんか間違ってるだろ。

138 名前:デフォルトの名無しさん [2017/02/13(月) 20:12:19.53 ID:SRrzQdIe.net]
関数型とオブジェクト指向は共存できるだろし。
説明はできないが、別次元の概念だとおもうぞ。
進化するとか比較対象になるものではないだろ。
オブジェクト指向をベースにした純粋関数型言語って可能だろ?

139 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 20:17:27.40 ID:l1N3ICNN.net]
オブジェクト指向を入れると型推論のアルゴリズムが複雑
ゆえに現実主義者はダックタイピングでオブジェクト指向するか純粋関数型で型推論する

140 名前:デフォルトの名無しさん [2017/02/13(月) 20:23:35.51 ID:SRrzQdIe.net]
ぐぐった、抜粋。


関数型言語のウソとホント - Qiita


?「関数型言語もいずれオブジェクト指向などのスタイルを取り入れたマルチパラダイムな言語になる」

関数型言語は関数というたったひとつの武器だけをひたすら研ぎ澄まして問題に立ち向かおうとする言語であり、それ以外の武器はかえって邪魔になります。
OCamlなんかはCamlという言語にオブジェクト指向的な機能を付け加えたObjective Camlが改名されたものだそうですが、OCamlが積極的にオブジェクト指向で設計されているようには見えないです。
Haskellに至ってはオブジェクト指向を取り入れる動きはほとんど皆無ですし、そうする必要がないです。
O'Haskellといってオブジェクト指向の概念を取り入れたHaskellが提案されたこともあったようですが、現在O'Haskellが使われているという話は聞いたことがありません。
最近では関数型以外の言語が関数型のスタイルを取り入れる動きがしばしば見られる一方で、関数型のほうから例えばオブジェクト指向を取り入れる動きはあまり積極的ではないようです。
しかし近年ではやはりScalaがオブジェクト指向と関数型の融合を目指したものとして台等しています。

qiita.com/hiruberuto/items/26a813ab2b188ca39019

141 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 20:24:33.73 ID:9ZqcI6aJ.net]
>>139
純粋関数型にとって型推論とはそんなに重要なものなのですか?

142 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 20:54:36.75 ID:3XLU4PQN.net]
OCamlは型システムが柔軟で強力なら、大抵の場面でOOじゃない方が楽だってことを教えてくれる良い言語
わざわざオブジェクトにするのは、遅延結合が必要な所とヘテロジーニアスなオブジェクトを統一して扱う場合くらい

弊害として、過激なOO不要論者になる可能性がある

143 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 21:01:24.48 ID:l1N3ICNN.net]
>>141
個人的には、重要かどうかではなく本当に実現するのか騙されてるだけなのかを知りたい

144 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 22:01:47.07 ID:tn7uWAuX.net]
当たり前なのかもしれないけど
データと処理が強く結びついてるドメインにおいてはオブジェクト指向の恩恵のほうが大きいんじゃね
グラフィック系のツールで選択してるブラシによっていろんな動作が変わるやつとか

データと処理が一箇所にまとまっててその結びつきが強制されてることにどの程度の価値を見出すか
Strategyパターンみたいなもを例に考えるといい気がする

145 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 22:17:28.21 ID:JsOR7Nm6.net]
実践 Common Lisp とか読んでれば common lisp はだいぶ穏やかな言語だって
思うんだけどね。
あれもマクロマクロうるさい馬鹿のせいで偏見持たれてる気がする。

146 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 22:21:19.27 ID:ut1LFOtS.net]
>>145
わかる
そんなに尖った機能無いよな



147 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 22:22:45.43 ID:GOtEVvRl.net]
>>140
おはスケル

なんJ民かな

148 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 22:23:57.02 ID:GOtEVvRl.net]
Lispはかっこつけすぎ

149 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 22:56:11.66 ID:HSaRDCl9.net]
プログラミングは免許制にすればいいよ、
関数型プログラミングができるかどうかで。

馬鹿プログラマでも扱えるように色々と冗長にする
-> 冗長だから手番が増えてさらにプログラマが必要となる
-> 馬鹿プログラマが補給される

このコンボが決まって悪循環が続いている、と。
別に関数型プログラミングが全能とは思わないが、現時点でのひとつのリトマス試験紙にはなるかと。

150 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 22:56:44.30 ID:g1s3e9Z7.net]
((L)(((i)s)p)))

151 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 22:58:39.38 ID:g1s3e9Z7.net]
>>149
関数型の基礎になる数学知識があるかを問うたほうが良さげ

152 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 22:59:44.86 ID:ut1LFOtS.net]
マクロが自然に馴染む構文というと、結局S式しかないという気はする
IDEでマクロの構文まで面倒見てくれる言語ってなんかある?
あれば使ってみたい

153 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 23:44:14.31 ID:HSaRDCl9.net]
>>151
そうかもね。抽象化の最たるものだね、数学は。
>>152
emacsのLispモードについてんじゃないの?(適当)

154 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 23:50:25.63 ID:ut1LFOtS.net]
>>153
「S式(lisp)ならマクロに対する特別な支援は(殆んど)要らない」ってこと
Juliaでマクロ書いてて思ったのよ、インデント崩れたりとか

155 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 23:57:47.13 ID:kQGSvZ2q.net]
S式は括弧使って構文解析サボってるだけ。
逆ポーランドとかの怠け記法と同類。

156 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 23:58:31.38 ID:HSaRDCl9.net]
>>154
なる。Julia知らんけどemacsなら(ry



157 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 23:59:24.88 ID:HSaRDCl9.net]
>>155
emacsなら(ry

158 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 00:35:59.85 ID:gfvqdCIF.net]
数学知識より国語力高いやつのほうが欲しい

159 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 00:40:40.70 ID:4G8SInJT.net]
数学知識。まずは自分の国語力を見直そうか。

160 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 00:46:48.47 ID:gfvqdCIF.net]
それはごもっともだが>>151の引用だから

161 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 00:53:58.87 ID:4G8SInJT.net]
これは失礼。国語力も大事ですね。

162 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 02:34:10.88 ID:4XLa6m2a.net]
オブジェクト思考はそもそもの設計思想からミスってるというのが持論だけど、割とハードにちかいとこでのでーたのやりとりのラップにつかえんのかなってかんじ

163 名前:デフォルトの名無しさん [2017/02/14(火) 07:08:37.44 ID:izwS/hYI.net]
LispやってるとなんでCでは中括弧を閉じるとき重ねずに一つ一つ改行していくんだろうと感じる

164 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 07:54:13.53 ID:deUQRuVA.net]
>>163
LISPは行エディタ時代の言語。Cは画面エディタ時代の言語。
カーソルを縦に下ろしていって、ブロックを確認するのに、
改行しておいた方が都合よかったからではないか。

165 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 08:15:42.74 ID:uoklH2m8.net]
実際に書いてみると、以下みたいなタイミングで改行を押すことになると思う

(define (fact n)[改行] (if (<= n 1)[改行]1[改行](* n (fact (sub1 n)))))

そうなると自然に閉括弧の中には改行が入らなくなるんじゃないかな
特にコーディングルールなんかを意識しなくても、閉括弧が密集するはず

166 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 08:19:39.83 ID:uoklH2m8.net]
Juliaってまだ次世代言語という認識も無い感じなのかな、ver1.0出ないし
それとも対象領域が狭いのか



167 名前:デフォルトの名無しさん [2017/02/14(火) 08:41:27.92 ID:ptdZF2Do.net]
Juliaはすでにダメかと
放置ぎみ
これは言語に特色あるというより、LLVM用のスクリプト言語って位置づけだろ?
JavascriptをベースにしてLLVMを動かしてもいい。

168 名前:122 mailto:sage [2017/02/14(火) 08:44:44.67 ID:deUQRuVA.net]
>>124 >>125
どう答えればよいか考え倦ねていたのですが、
Prologの場合は、基本論理式であることは確かですから、論理かなと
言われればその通りなのでしょう。
>>107の「私は帰ります」から始まるスレッドで言いたかったのは、
受け取った文そのものが、シンボルで即ち述語となるということ。
それが我々が自然言語を扱う時、自然言語に接する時の作法に近い。
そのシンボルはやがて分解されて、詳細な述語が生まれる。そしてまた
それがDCG節で書いた二番目の定義、即ち、句構造への文法的な解析と
ほぼ同型になる。そういう主張です。

169 名前:デフォルトの名無しさん [2017/02/14(火) 08:45:48.11 ID:ptdZF2Do.net]
開発されてた

GitHub - JuliaLang/julia: The Julia Language: A fresh approach to technical computing.
https://github.com/JuliaLang/julia

170 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 09:38:35.37 ID:OAj0rQR0.net]
>>168
Prolog、面白そうですね。やってみます。

FPでの自然言語処理だと、全てを読んだ訳ではない上での感想と理解いただきたいですが、
Computational Semantics with Functional Programming
がFPらしい流儀で本格的なことやってるように見えました。
Draft版がpdfで読めます。

171 名前:デフォルトの名無しさん [2017/02/14(火) 10:03:37.62 ID:lPJlbUrB.net]
Juliaはとりあえず永遠にStableにならなそうなふいんき()をなんとかしてくれ。
同じ事がNimやElmにも言えるが。

172 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 11:20:46.81 ID:QO8CQqzs.net]
俺数学大っ嫌い文系だけどオブジェクト指向言語より関数型言語のが好きなんだが異端なのか?

173 名前:デフォルトの名無しさん [2017/02/14(火) 11:33:19.82 ID:ptdZF2Do.net]
手続き型は関数型を一般化したようなもので、関数型は手続き型を制限したようなもの。
手続き型ができれば、注意深くやれば関数型はかけるはず。
記法は別にしてほぼ一行でプログラムするようなこと。ハンターハンターでこんなのあるが。



制約と誓約についての詳しい考察 | キルアから見たHUNTER×HUNTER
念能力における概念の一つ。
自らの念能力に対し制約と誓約を課すことによってその威力と精度を著しく向上させることが出来る。
能力者のほとんどは「制約」のほうだけを自らの念能力に取り入れているケースが多く、
純粋に制約と誓約の両方を取り入れている能力者はクラピカくらいだと言える。
クラピカ
中指の鎖に対して「旅団以外には使わない」という制約と「旅団以外に使った場合は命を絶つ」という誓約を立てた。
作中では述べられていないが、恐らく制約のみを課すよりも制約と誓約の両方を課した方が能力がより向上するものと思われる。
kirua-hunterhunter.com/seiyaku/

174 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 12:28:22.89 ID:PhsD9VtO.net]
>>172
洗練ということに価値をみる人だと至極当たり前の方向だと思う。

175 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 12:33:23.61 ID:OAj0rQR0.net]
>>172
物事の抽象化という点では文理関係ないのでは?

受験数学だと抽象的でない暗記的な内容もあるでしょうし。例えば積分公式の暗記とか。
微分と積分が逆だとぼんやり理解するのが大事で、
ばっちり解析解(公式)が出るかはそりゃ出れば嬉しいけど、出ない方が多い。
そういう狭い領域が○×を判定しやすいという理由で試験にでているだけなのに、
それが数学の全てで、そういうテクニカルなことが嫌いだから数学も嫌いと思っている人は多いのではないでしょうか。

176 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 13:05:57.35 ID:he6YB8dM.net]
lim
ver->1.0 JULIA ver



177 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 15:41:28.41 ID:90/NuRRw.net]
Haskellからは関数型言語という制約を課しながら手続き型言語になりたい
という気持ちが伝わってくるからな。
結局、多様なオブジェクツからなる手続き型言語の理想世界を関数という
アトムで表すことが夢の最終目的なんだよな。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<55KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef