- オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
734 :デフォルトの名無しさん[sage]:2015/12/12(土) 00:13:32.13 ID:kJaM603p - >>730
ドカタ言語の部分は、OCamlが現場では使われてないっていいたいの?w
|
- Git 13 [転載禁止]©2ch.net
447 :デフォルトの名無しさん[sage]:2015/12/12(土) 00:16:52.83 ID:kJaM603p - そこで普通にCygwinを入れてるっていうわけ。
こっちがオリジナルだしね。
|
- オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
737 :デフォルトの名無しさん[sage]:2015/12/12(土) 00:29:03.03 ID:kJaM603p - >>736
ちなみに、C/C++では、その長ったらしい型に対して プリプロセッサを使って、独自の名前を定義することで対応していた。 コードの見た目はすっきりする反面、実際にどんな型なのかわかりづらくなり、 またエラーメッセージはプリプロセッサを通した後になるので、 エラーの内容とコードの対比を考えるのが面倒だった。 型推論のおかげで、近くに型を書いておけば(全てを省略できるわけではないので どちらにしろ近くに型を書くことになる)そこから推論で求められる部分に関しては 型を書かなくて良くなった。便利だね。
|
- Git 13 [転載禁止]©2ch.net
449 :デフォルトの名無しさん[sage]:2015/12/12(土) 01:20:39.35 ID:kJaM603p - 何が困るの?
|
- Git 13 [転載禁止]©2ch.net
452 :デフォルトの名無しさん[sage]:2015/12/12(土) 02:16:42.40 ID:kJaM603p - > git-bashで
> ls /c/Users > ls c:/Users > ls 'c:\Users' > が全て同じ結果になるけど ls /c/Users => ls /cygdrive/Users ls c:/Users => 動く ls 'c:\Users' => 動く なんだ、動くじゃん。 一番上はマウントする場所の違いってだけだろう。 msysはcygwinのフォーク何だから、 そういう基本的な所はcygwinの機能だろう。
|
- Git 13 [転載禁止]©2ch.net
453 :デフォルトの名無しさん[sage]:2015/12/12(土) 02:17:47.28 ID:kJaM603p - さくっと見つかった。
いちいち"/cygdrive/c"っていれるのが面倒なので、"/c"ってなるようマウントテーブルをいじる http://d.hatena.ne.jp/snaka72/20100605/1275733012
|
- オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
784 :デフォルトの名無しさん[sage]:2015/12/12(土) 03:20:04.13 ID:kJaM603p - > 互いに本当に遠いとこに住んでるなぁ
だな。実際に実用的なものを作ってる人と ただ言語を勉強しているだけの人の違いだな。
|
- オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
787 :デフォルトの名無しさん[sage]:2015/12/12(土) 05:33:00.84 ID:kJaM603p - >>786
> まともなmilner式の型推論はNP完全だぞ? だからだよw 現実の実装をわかってないね。 NP完全だから答えがわかるまで永遠に計算してるとでも思ってるの? 型推論っていうのはね。どんな場合でも推論します。 型は絶対に書く必要ありません。って機能じゃないの。 型を推論できる条件を満たしていれば「その型です」 その条件を満たしていない場合は「わかりません」でおしまい。 わからない場合はコンパイルエラーがでて型を明確に書く必要がある。 型推論っていうのはね。ある条件を満たしている場合は 型を書かなくてもOKですよっていう機能。 これが「型推論」という名前で呼ばれる機能であって 「型を推論すること」じゃないの。
|
- オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
790 :デフォルトの名無しさん[sage]:2015/12/12(土) 05:55:44.71 ID:kJaM603p - 型推論は明らかに、特定の言語に備わった機能の名前なんだが?
その機能があることでプログラマに(既出につき省略)という メリットが有るものなんだが。 証明? 証明してどうするの? ほんと、意味不明w
|
- オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
791 :デフォルトの名無しさん[sage]:2015/12/12(土) 06:01:17.67 ID:kJaM603p - >>789
> あんたがいう型推論ってのは 俺が言う型推論ってなんだ? なんで、俺が定義しないといかんのだ? 今話している型推論っていうのは、特定のプログラム言語が持っている 機能であって、型推論の細かい定義はその言語が決めてることなんだが。 俺が知るかぎり、どの言語も、型が推論で決定できない場合は コンピュータは推論は放棄する(だから遅くなることはない) そして"プログラマが"明確に型付けを書くという方式をとってる。 全部の型が消えるわけじゃないが、推論で決定できる場合は 書かなくて済むというメリットがある。
|
- オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
792 :デフォルトの名無しさん[sage]:2015/12/12(土) 06:07:30.79 ID:kJaM603p - 型推論で遅くなるっていうから、何でかと思えば、
型の推論が事実上出来ない場合(NP完全)は型が判明するまで 型は何かという問題をずっと解いているからとか言い出した。 本当に頭悪過ぎだろう
|
- オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
795 :デフォルトの名無しさん[sage]:2015/12/12(土) 06:20:45.07 ID:kJaM603p - 型推論は証明じゃない。
言語が備えた機能の一つだ。
|
- オブジェクト指向は愚かな考え。この世は計算式 [転載禁止]©2ch.net
796 :デフォルトの名無しさん[sage]:2015/12/12(土) 06:26:36.75 ID:kJaM603p - 俺もこの言語はよく知らないが、関数型言語の型推論の説明を、たまたま見つけたからこれを書いておくか。
一般的な型推論の説明であり、俺が言いたいことを書いてくれてる。 https://msdn.microsoft.com/library/dd233180(v=vs.110).aspx 俺が言ったことを補完してくれる文章で、俺は満足しているが、 ほんと、お前、どの言語の型推論の話してるんだよって感じだな。 型推論 (F#) 一般的な型推論 ^^^^^^^^^^^^^^^^^^^^^ 型推論を行うことによって、 コンパイラが推論によって型を確定できない場合以外は、F# の構成要素の型を指定する必要がなくなります。 型情報を明示的なに指定しないということは、F# が動的に型指定される言語であるという意味でも、 F# の値が弱く型指定されているという意味でもありません。 F# は、静的型付け言語です。 つまり、コンパイラはコンパイル時に、各構成要素の正確な型を推定します。 情報が不足しているためにコンパイラが各構成要素の型を推定できない場合は、 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 通常、コードのどこかに明示的な型の注釈を加えて、追加の型情報を指定する必要があります。 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|