やっぱり動的型付け言語は大規模開発で効率が悪い 2
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2011/10/22(土) 01:01:12.94反論したいなら語れや。
やっぱり動的型付け言語では安全なソフトは作れない
http://hibari.2ch.net/test/read.cgi/tech/1316887046/
0002デフォルトの名無しさん
2011/10/22(土) 01:56:23.560003デフォルトの名無しさん
2011/10/22(土) 02:02:02.060004デフォルトの名無しさん
2011/10/22(土) 07:39:45.81最初からJavascriptベースになんかするかよw
基本は動的型付で、APIでは型アノテーションつけたり、
下周りのライブラリで型を決め打ちしても実害が少ないところを
型をつけてチューニング可能、というだけ。
Dartが静的型ベースなら、型宣言を必須にした上で、
静的型を付けたくないところをany型とかにするだろ。
0005デフォルトの名無しさん
2011/10/22(土) 07:44:38.00日本語の解説記事だけ読んで「型注釈あり=静的型付け」と短絡的に考えてます
0006デフォルトの名無しさん
2011/10/22(土) 08:07:00.540007デフォルトの名無しさん
2011/10/22(土) 08:10:19.10やっと理解したということだな
で、今度は大規模開発の銀の弾丸かw
0008デフォルトの名無しさん
2011/10/22(土) 09:46:11.30Javascriptベース……?
開幕からいきなり何言ってんだこいつ
0009デフォルトの名無しさん
2011/10/22(土) 09:58:07.42しっかりdartは動的型付と書いてあるがな
型アノテーションは単に
人や機械へのヒントだと
0010デフォルトの名無しさん
2011/10/22(土) 10:07:36.14Dartで作ったものをJSに変換する都合上、動的型付けでも動くようにしてるだけだろうが…
0011デフォルトの名無しさん
2011/10/22(土) 10:10:52.580012デフォルトの名無しさん
2011/10/22(土) 10:15:30.23動的だと人や機械へのヒントすら(まともに)できなかったから、Dartは作られたわけで
静的屋としてはありがたいよ
0013デフォルトの名無しさん
2011/10/22(土) 10:40:13.460014デフォルトの名無しさん
2011/10/22(土) 10:56:06.59なんで?
JSがブラウザを占拠している以上、それにあわせて普及を目指すのは当然の戦略だが?
非常に頭の良い折衷案だろ、あれは
「完全な静的型付け言語としても利用でき、普及されきっているJSへの変換もサポートし、JS同様の動的型付け言語もできる」
静的erにとって最高の対応じゃん
0015デフォルトの名無しさん
2011/10/22(土) 11:20:07.67静的型付け言語的な機能をもった構文パーサで構文解析。
その結果を、動的型付け言語に変換したり、動的型付け言語ベースのVMで実行する。
こんな感じかね?
0016デフォルトの名無しさん
2011/10/22(土) 11:24:54.39侮辱って…静的ってそこまで高尚なものでも無いと思うんだがなあ
ただの考え方の違いでしかないんだが
0017デフォルトの名無しさん
2011/10/22(土) 11:25:21.60VMはマシンだ。機械語だ。
機械語に動的とか静的があるか。
単純な命令をたんたんと実行してるだけ。
0018デフォルトの名無しさん
2011/10/22(土) 11:35:01.53単にDartのVMが普及してないからJSエンジンの上で動かすようにしてるだけだろがw
0019デフォルトの名無しさん
2011/10/22(土) 11:51:44.17最近のJavaScriptのJITコンパイラみたいなものを想像してたんだけど。
ドキュメントにもDartのVMはDartのコードをダイレクトに実行するとか書いてあったし。
0020デフォルトの名無しさん
2011/10/22(土) 11:57:25.00JavaVMはJITコンパイルしてますよ。
なにが言いたいか理解できますか?
0021デフォルトの名無しさん
2011/10/22(土) 12:01:11.64JavaVMのJITコンパイラと、
V8みたいなJavaScriptのJITコンパイラの動作の違いは理解できてる?
0022デフォルトの名無しさん
2011/10/22(土) 12:06:53.110023デフォルトの名無しさん
2011/10/22(土) 12:07:48.720024デフォルトの名無しさん
2011/10/22(土) 12:08:17.760025デフォルトの名無しさん
2011/10/22(土) 12:09:35.040026デフォルトの名無しさん
2011/10/22(土) 12:10:20.72最初は変数の型とかが確定できないから変数の参照更新なんかを動的型付けに対応した処理に変換する。
そして、実際に実行してみて変数が特定の型でしか参照更新されないと判断したら、
それを静的型付けにのみに対応した処理に置き換えて高速化するよね。
DartのVM?JITコンパイラ?も同じようなことをやると思うんだけど、
型情報がプログラムに記述されてる場合には、最初から静的型付けにのみに対応した処理に変換することで、
より効率的に処理できる。Dartの型情報ってのは実行時にはこんな感じに使われると思ったんだけど違うのかな。
0027デフォルトの名無しさん
2011/10/22(土) 12:13:00.150028デフォルトの名無しさん
2011/10/22(土) 12:13:52.78DartのVMが動的型付け言語ベースと書いたんだけど、どうなんだろ?
0029デフォルトの名無しさん
2011/10/22(土) 12:15:27.48何の関係もない。
0030デフォルトの名無しさん
2011/10/22(土) 12:27:36.17それを指して「C++よりCの方が優れている」と言ってよいものかどうか・・??
0031デフォルトの名無しさん
2011/10/22(土) 12:48:47.76型をオプションで記述できる動的型付け言語と、
型が省略可能(推論もされず実行時に決定)な静的型付け言語を、
区別するものは何なんだろうね。
0032デフォルトの名無しさん
2011/10/22(土) 13:02:56.88区別する必要あるのか?
どっちも同じじゃん
残念なのは、現在の動的型付け言語は、「完全な静的型付け」として利用するオプションを持っていないってことだろ
だからDartが作られた
0033デフォルトの名無しさん
2011/10/22(土) 13:12:40.350034デフォルトの名無しさん
2011/10/22(土) 13:22:36.65いや、1人のマヌケがいっぱい書いてるだけか
0035デフォルトの名無しさん
2011/10/22(土) 13:26:45.25粛々と説得材料書けば済むだけのことだろ
0036デフォルトの名無しさん
2011/10/22(土) 13:28:50.04欲しいのはコンパイル時に問題を検出できる能力だ
言葉遊びはイランよ
0037デフォルトの名無しさん
2011/10/22(土) 13:29:00.91静的動的なんて考え方の違いでしかないのに
静的厨が何故か動的を下として見るからな、気に食わないとしたらそこだけだ
別に盛り返してるとも、上だとも下だとも思ってないよ
0038デフォルトの名無しさん
2011/10/22(土) 13:31:25.17それを読みもせずに「動的型から静的型への移行は不可能だから」とかいう
ググルのアナウンスと真っ向から相反する噴飯モノのトーシロ発言をご開陳しているのが
静的廚だということぐらい、本人以外はみーんなわかってる罠
0039デフォルトの名無しさん
2011/10/22(土) 13:34:46.54え?お前何いっちゃってるの?
誰が動的型から静的型への移行は不可能とか言っちゃってるの?脳内仮想敵?
別に静的への移行が可能な動的型言語が普及しているなら、それに乗ればいいだけじゃん
で、何か1つ例あげてよ
0040デフォルトの名無しさん
2011/10/22(土) 13:38:22.55単に型情報を取り除くだけでいいけど、
動的型付け言語に、静的型付け言語の機能を加えようとしたら、
それは全くの別言語になってしまう。
0041デフォルトの名無しさん
2011/10/22(土) 13:40:43.660042デフォルトの名無しさん
2011/10/22(土) 13:40:50.32型を無視する型があるからね。
それにキャストすることで型を無視する機能は、
静的型付け言語にもともと付いているわけだ。
まあ、デメリットしか無いから特に理由がない限り使わないが。
0043デフォルトの名無しさん
2011/10/22(土) 13:43:18.54どうする?
1. 無視する
2. 笑う
3. ひとまず同調してもっと大きな笑いを引き出す
0044デフォルトの名無しさん
2011/10/22(土) 13:46:23.050045デフォルトの名無しさん
2011/10/22(土) 13:46:40.840046デフォルトの名無しさん
2011/10/22(土) 13:48:52.31| . : )'e'( : . | どうする?
` ‐-=-‐ 1. 無視する 2. 笑う 3. ひとまず同調してもっと大きな笑いを引き出す
/ \
||\ ̄ ̄ ̄ ̄ ̄ ̄ \
||\\. \ ∧_∧
||. .\\ \ ( ;´Д`) (オイ、なんか変なのがいるぞ)
. \\ \ / ヽ.
. \\ / .| | |
. \∧_∧ (⌒\|__./ ./
( ´,_・・`)目合わせるなって ∧_∧
. _/ ヽ \ ( ) うわー、こっち見てるよ
0047デフォルトの名無しさん
2011/10/22(土) 14:07:33.00おいおい
0048デフォルトの名無しさん
2011/10/22(土) 14:10:02.410049デフォルトの名無しさん
2011/10/22(土) 14:12:08.96でも俺が欲しいのは、意図的に制約をかけることができる言語なんだ
いうなれば、安全装置のついた武器が欲しい。
安全装置がついてない武器を、まだ未熟な新人たちに渡したくないんだ
0050デフォルトの名無しさん
2011/10/22(土) 14:19:03.71> 動的型言語のほうが柔軟だからなあ、それを静的に落とし込むのは動的型言語のほうでどうこうしても仕方ないよ
柔軟と言うか、たんに無秩序ってだけだな。
たとえばgotoは柔軟だ。
だがその柔軟さ故に悪いものと認識された。
0051デフォルトの名無しさん
2011/10/22(土) 14:28:00.41templateとかリフレクションならまだしも
それは結局型を知らないとメソッドも呼べない時点で静的型付けそのもの
動的型付けと比較できる機能じゃない
0052デフォルトの名無しさん
2011/10/22(土) 14:32:17.03後で移行できるなら、最初は小規模でいいし追加分も少しずつでいいことになる
それでは大規模の価値がなくなってしまう
そこで、小規模から大規模に移行したり動的から静的に移行することは不可能
というルールを叩き込むことで大規模の価値を守ろうという流れになる
0053デフォルトの名無しさん
2011/10/22(土) 14:33:47.82C#のdynamic型も実装はリフレクションだったと思う
C++ならテンプレートと継承のあわせ技でtype erasureを行う
0054デフォルトの名無しさん
2011/10/22(土) 14:36:28.16レス番間違えてないか?
「静的への移行」ってのは、プロジェクトを移行することじゃないぞ?
0055デフォルトの名無しさん
2011/10/22(土) 14:39:33.27静的型付けに動的型付けの機能をいれこむのは
そんなに難しいことではない。
今までダメだったことを、認めればいいだけだけ。
もちろん以前の書き方も通用するから段階的に変更していける。
しかしもともとが緩かったら、そこに制限のある型を
導入すると、全体のコードがそれに引きづられてしまう。
今までできていたことができなくなる。
できなくなるから静的型付け用に書き換える。
そうすると、それに依存している部分を書き換えなくてはならなくなる。
そして、さらにそれに依存している部分を・・・と続く。
0056デフォルトの名無しさん
2011/10/22(土) 14:48:42.30是非とも使いたいんだ。頼む
0057デフォルトの名無しさん
2011/10/22(土) 15:10:32.85そもそも、それがあったとして
それは動的型付けに分類できるのか?
まあ、静的型付けに分類するのも難しいのかも知れないが
0058デフォルトの名無しさん
2011/10/22(土) 15:20:16.08int func() {
return 10;
}
}
class Class2 {
String func() {
return "20";
}
}
func(Class1 hoge) {
print(hoge.func());
}
main() {
func(new Class1());
func(new Class2());
}
これでwarningが出るだけだから>>56の言う感じに近いのでは
funcの引数をvarにすればWarningも出なくなるし
0059デフォルトの名無しさん
2011/10/22(土) 15:24:52.040060デフォルトの名無しさん
2011/10/22(土) 15:25:41.51Hashable h = '1';
int n = h;
print(n + 1); # 出力:11
0062デフォルトの名無しさん
2011/10/22(土) 15:31:25.60静的厨が、Dartが静的にも完全対応してて素晴らしいって言ってたら
動的厨が「そんなもんすでにある」というようなことを言ってきたので「具体例1つあげろよ」ってなったんだが…
0063デフォルトの名無しさん
2011/10/22(土) 15:35:09.92「Dartが静的にも完全対応してて素晴らしい」というのに反論してだけなのに、
なぜか動的厨扱いされてるでござる
0064デフォルトの名無しさん
2011/10/22(土) 15:36:29.47お前のレスどれだよ58だろ?
なんで「Dart以外にあんの?」って聞いてるレスに対して、Dartのコード貼ってんだよ
0065デフォルトの名無しさん
2011/10/22(土) 15:41:03.820066デフォルトの名無しさん
2011/10/22(土) 15:43:36.94OCamlだけで書けば静的型安全だよ
Javascriptで書いた部分は動的型付けだよ
0067デフォルトの名無しさん
2011/10/22(土) 15:44:13.90出すよ
実際に自分でやってみりゃ一発だろ
0068デフォルトの名無しさん
2011/10/22(土) 15:46:44.89自分こそやってみてから言えよ
warningなんて出ねーよ
006958
2011/10/22(土) 15:56:43.84いや違うよ
そもそも「Dart以外にあんの?」っていう流れがどこか解らん
0070デフォルトの名無しさん
2011/10/22(土) 16:01:29.38>>39,47
>>52
>>54
0071デフォルトの名無しさん
2011/10/22(土) 17:26:51.28> そもそも「Dart以外にあんの?」っていう流れがどこか解らん
pythonやStrongtalkすら知らないアホ>>64の脳内流れ
0072デフォルトの名無しさん
2011/10/22(土) 17:28:02.760073デフォルトの名無しさん
2011/10/22(土) 18:03:48.89HashableをStringにすれば一応警告が出る。
0074デフォルトの名無しさん
2011/10/22(土) 18:16:01.220075デフォルトの名無しさん
2011/10/22(土) 18:43:29.490076デフォルトの名無しさん
2011/10/22(土) 18:54:59.050077デフォルトの名無しさん
2011/10/22(土) 18:56:42.17型付けできない式がある時点で静的型言語と言えるわけがねえだろw
0078デフォルトの名無しさん
2011/10/22(土) 19:21:40.19型推論の無い言語でHashableなんて抽象的な型で変数を定義するのは、
静的に型を指定してるとは言えないんじゃないか。
0079デフォルトの名無しさん
2011/10/22(土) 19:28:53.250080デフォルトの名無しさん
2011/10/22(土) 19:47:29.30ただ、型推論無しの静的言語じゃ、変数をインターフェースだけで定義できないだろw
型推論の無いDartで変数の型を静的にチェックしてもらいたかったら、
具体的な型で変数を定義しろってことだ。
0081デフォルトの名無しさん
2011/10/22(土) 19:50:15.88main() {
Hashable h = 'this';
int n = h;
print(n + 1); # 出力: this1
}
こうなるんだな、ワロタw
0082デフォルトの名無しさん
2011/10/22(土) 19:51:09.13式(n+1)の静的型intが誤解を生んでいるな。
これなら、静的型なんて無視して、動的型Stringのみを見るほうが
プログラムの動作を理解しやすい。
結論:Dartは静的型付言語ではなく、型注釈付き動的型付言語
0083デフォルトの名無しさん
2011/10/22(土) 19:53:23.38はぁ、それって単純に+演算子が
オーバーロードされてるようなもんじゃん。
0084デフォルトの名無しさん
2011/10/22(土) 19:54:26.74片方にオブジェクト型が含まれていると、
toString()呼び出しで文字列として結合するようなもんかな。
0085デフォルトの名無しさん
2011/10/22(土) 19:55:02.94intとstringがoperator+で足せるのはJavaやC#なんかもそうだ
好みの問題は別として、別におかしくない
問題は2行目だろw
int型の変数に代入してるのに、完全に何の意味もない
0086デフォルトの名無しさん
2011/10/22(土) 19:56:57.09Dartの静的型って屁の役にも立たないだろw
0087デフォルトの名無しさん
2011/10/22(土) 19:57:01.290088デフォルトの名無しさん
2011/10/22(土) 19:58:27.14コードを一目見て読み取れない>>83が静的型言語でマトモなコードを書けるとは到底思えない件w
0089デフォルトの名無しさん
2011/10/22(土) 20:00:10.92単なる注釈だからな。そこが静的型付けと型注釈の決定的違い。
0090デフォルトの名無しさん
2011/10/22(土) 20:01:09.50int n = h;
のところで警告出さないのか?
0091デフォルトの名無しさん
2011/10/22(土) 20:01:26.61hの型を具体的なStringとかにしとけば、n=h;で一応警告がでる。
Dartの型システムがまるで役に立たないと言うわけでもない。
0092デフォルトの名無しさん
2011/10/22(土) 20:02:40.14どういう型なんだ?
0093デフォルトの名無しさん
2011/10/22(土) 20:03:04.400094デフォルトの名無しさん
2011/10/22(土) 20:06:03.19すくなくとも今
http://www.dartlang.org/docs/getting-started/index.html
からWeb上で試せる実装では、
警告どころか実行時エラーにすらならない
0095デフォルトの名無しさん
2011/10/22(土) 20:06:13.81静的型やめますか
0096デフォルトの名無しさん
2011/10/22(土) 20:06:47.15知らない言語があるだけでアホ呼ばわりされるとは不条理だなぁ・・・
python調べてみたんだが、変数の型宣言すら無いようだが?
0097デフォルトの名無しさん
2011/10/22(土) 20:07:08.11int n = h;
はHashableからintへのナローキャストじゃないのか?
0098デフォルトの名無しさん
2011/10/22(土) 20:08:00.14自分の調べ方が足りないという自覚もないのか?
0099デフォルトの名無しさん
2011/10/22(土) 20:08:17.89Hashable -> int のcoercionはdowncastなわけだから、
型安全な言語なら、とうぜんそこで実行時型チェックするのが筋だろ
(C++でいうdynamic_cast<>やJavaのダウンキャスト)
Dartはベースが動的型言語である以上実行時型情報を持ってるはずなんだから
できないはずが無い
スルーしてintにそのまま入れるのがいいわけはないよ
0100デフォルトの名無しさん
2011/10/22(土) 20:10:35.71世の中全てのことを知っていると言えるほど、傲慢じゃない
0101デフォルトの名無しさん
2011/10/22(土) 20:13:13.02Python type check decoratorでググレカス
0102デフォルトの名無しさん
2011/10/22(土) 20:15:12.69これ、intの解釈が他の言語と違うだけじゃねーの?
intだから数値しか入れられないとおもいきや
実際にはオブジェクトだからキャストすれば何でも入れられる。
0103デフォルトの名無しさん
2011/10/22(土) 20:15:54.55正確には、値を変換しているわけじゃないから、coercionではなく、type conversionでしょ。
実行時に動的型検査するのが当然、には同意。
もっと言えば、静的型付けなら、コンパイル時に警告を出して当然。
0104デフォルトの名無しさん
2011/10/22(土) 20:16:49.48× オブジェクトだから
○ 動的型付け言語だから
0105デフォルトの名無しさん
2011/10/22(土) 20:16:58.63このインタフェースを実装してる型のオブジェクトは、
Pythonなら__hash__、DartならhashCode()で、オブジェクトのハッシュ値を返す。
0106デフォルトの名無しさん
2011/10/22(土) 20:17:11.89いやサブクラスの変数にスーパークラスのオブジェクトが束縛出来るのがおかしいだけだろ
普通の静的型付け言語ならキャストしないと弾かれる
0107デフォルトの名無しさん
2011/10/22(土) 20:18:19.60というのが普通だな
0108デフォルトの名無しさん
2011/10/22(土) 20:22:47.04class foo;
class bar extends foo;
で、
bar tmp = new foo;
ってのが警告無しでできてしまう。
まぁ多分Web上のコンパイラがおかしいんだろう。本物のコンパイラなら、オプションなりでちゃんと警告ないしはエラーが出ると思いたい
0109デフォルトの名無しさん
2011/10/22(土) 20:24:32.96ちゃんとコンパイルエラーにしないと。
0110デフォルトの名無しさん
2011/10/22(土) 20:27:22.69なんじゃこりゃああ!
0111デフォルトの名無しさん
2011/10/22(土) 20:27:48.27お前はなにドカタ言語を使ってるの?
0112デフォルトの名無しさん
2011/10/22(土) 20:29:51.50インテリセンスがきかねーんだ
0113デフォルトの名無しさん
2011/10/22(土) 20:37:47.43残念ながらダウンキャストで警告が出ないのはDartのドキュメントに書かれてる
0114デフォルトの名無しさん
2011/10/22(土) 20:39:40.74そのあたりが型注釈としての落とし所なんだろうな
静的型がベースなら、絶対そんな仕様にはしないよ
0115デフォルトの名無しさん
2011/10/22(土) 20:43:40.190116デフォルトの名無しさん
2011/10/22(土) 20:44:13.750117デフォルトの名無しさん
2011/10/22(土) 20:44:16.53もたらさないな。
0118デフォルトの名無しさん
2011/10/22(土) 20:48:26.64>>60の例は型を指定しているせいで惑わされる
最初から変数に型が無ければ迷う事はないと
0119デフォルトの名無しさん
2011/10/22(土) 20:50:52.28動的型付け言語が世界を支配する!
0120デフォルトの名無しさん
2011/10/22(土) 20:59:01.38監査機関がいなければ、不正は起こらない!
0121デフォルトの名無しさん
2011/10/22(土) 21:01:28.54正しくは、
ウソばっかりつく監査法人にみてもらっても、かえって害悪しかないよね
だな。
0122デフォルトの名無しさん
2011/10/22(土) 21:03:53.85「ググルが静的型付けが優れていると証明した!」
と言いふらしていたのが、
Dartの型注釈のダメなところが指摘されたとたんに
「Dartは動的型だからダメダメだぁー!」
楽しそうな人生だねw
0123デフォルトの名無しさん
2011/10/22(土) 21:04:02.41main() {
Hashable x = 'Hello, ';
Hashable y = 'World!';
print(add(x, y)); # -> Hello, World!を印字する
}
正直こんな型注釈が一体何の役に立つのか理解に苦しむわ……
0124デフォルトの名無しさん
2011/10/22(土) 21:04:39.980125デフォルトの名無しさん
2011/10/22(土) 21:06:41.44静的型付言語でシコシコ書いてるドカタのことだね!
0126デフォルトの名無しさん
2011/10/22(土) 21:07:42.66なんでHashableが流行ってるんだよw普通にStringって書けよ警告してもらえるからw
0127デフォルトの名無しさん
2011/10/22(土) 21:09:16.020128デフォルトの名無しさん
2011/10/22(土) 21:09:37.46実際にHashに関わるコードから呼ばれてたらどうなんだ?
つーか、君、ドカタ?
0129デフォルトの名無しさん
2011/10/22(土) 21:09:59.60intという型情報を用いた最適化も無理じゃん
stringが渡ってきたらstringの加算をやるんだろ?
静的型注釈が本気で何の役にも立ってない
0130デフォルトの名無しさん
2011/10/22(土) 21:10:54.010131デフォルトの名無しさん
2011/10/22(土) 21:11:09.30ま、ドキュメント程度の意味しかないだろうね。
0132デフォルトの名無しさん
2011/10/22(土) 21:17:20.03ドカタって言っている人に聞きたいんだ。
君、仕事で何の言語使ってるの?
0133デフォルトの名無しさん
2011/10/22(土) 21:18:07.920134デフォルトの名無しさん
2011/10/22(土) 21:20:25.370135デフォルトの名無しさん
2011/10/22(土) 21:22:32.09確かにこれじゃ実行時には何の役にも立たないね。
>>26で言ってるような最適化も絵に描いた餅だ。
0136デフォルトの名無しさん
2011/10/22(土) 21:48:08.21それで、どんなシステム作ってるの?
0137デフォルトの名無しさん
2011/10/22(土) 21:48:11.08まじか!?
い、いらなすぎる……
0138デフォルトの名無しさん
2011/10/22(土) 21:52:52.20そこで過ちを認められず、意固地になるほうがおかしいと思うが?
0139デフォルトの名無しさん
2011/10/22(土) 22:06:00.27動的型付けはだめだからGoogleは静的型付けを選んだ。
だけど中途半端に残した動的型付けの機能、そのせいでダメな部分が残ってる。
0140デフォルトの名無しさん
2011/10/22(土) 22:16:11.960141デフォルトの名無しさん
2011/10/22(土) 22:30:09.160142デフォルトの名無しさん
2011/10/22(土) 22:31:38.67そりゃ、動的か静的かと言われれば動的に決まってんだろ。JS互換あんだし
0143デフォルトの名無しさん
2011/10/22(土) 22:35:42.59規格には、どういったケースでstatic type warningを出すかだけが書かれてるようだね。
ダウンキャストについてはDartのトップページ -> Articles -> Optional Types in Dart
って進んだところにある The static checker というパラグラフに書いてある。
0144デフォルトの名無しさん
2011/10/22(土) 22:41:40.07中途半端加えられた静的型付けの機能、そのせいでダメな部分が加えられた
だろうがw
0145デフォルトの名無しさん
2011/10/22(土) 22:48:56.33使いたくなければ静的型付け使わなければいいだけなのに、駄目な部分が加えられたとはこれいかに??
0146デフォルトの名無しさん
2011/10/22(土) 22:53:48.270147デフォルトの名無しさん
2011/10/22(土) 22:54:10.71あれ?
The static checker のさっそく最初に
String s1 = '9';
String s2 = '1';
...
int n = s1 + s2;
print(n);
これはstatic checkerが警告を発する
って書いてあるぞ?
0148デフォルトの名無しさん
2011/10/22(土) 22:55:16.42それStringだからじゃね
0149デフォルトの名無しさん
2011/10/22(土) 22:55:35.14あたりまえだろ、intとStringは直接のsubtype関係にないのだから。
0151デフォルトの名無しさん
2011/10/22(土) 23:01:18.68要らんw
0152デフォルトの名無しさん
2011/10/22(土) 23:02:52.14しかも、その文章から漂うドヤ顔っぷりがたまらんよなw
メリットのつもりなのかw
0153デフォルトの名無しさん
2011/10/22(土) 23:08:54.47型注釈を付けても型安全じゃないDart……
0154デフォルトの名無しさん
2011/10/22(土) 23:15:18.56一人で組んでるなら、ドヤ文通り確かに「実は中身が文字列であることをプログラマが知っている」かもしれんが、
そうでない場合のための型安全が欲しいってのに何考えてるんだろうな(;´Д`)
0155デフォルトの名無しさん
2011/10/22(土) 23:21:58.42Dartのどこが原則静的型だかw
0156デフォルトの名無しさん
2011/10/22(土) 23:23:07.29んー、確かにDartについて無知だったな。すまん
規格までいちいち読んでなかったからな。正直「まさか」だったわw
0157デフォルトの名無しさん
2011/10/22(土) 23:29:12.370158デフォルトの名無しさん
2011/10/22(土) 23:31:48.050159デフォルトの名無しさん
2011/10/22(土) 23:32:58.770160デフォルトの名無しさん
2011/10/22(土) 23:34:45.89掌かえしたように逆ギレしてグーグルをドヤ顔よばわり
おもしろいねえw
0161デフォルトの名無しさん
2011/10/22(土) 23:35:56.24なんだ。結局グーグル様のご威光があればひれ伏しちゃうタイプなのか、動的厨は
信念の無いやつだなぁ……
0162デフォルトの名無しさん
2011/10/22(土) 23:38:07.03でもDart自体はどう転んでも動的型付言語だわな。
「大規模開発だろうが、動的型付けをベースに考えざるを得ない。
型注釈ぐらいなら動的型の柔軟性を損わない範囲内で許すけど。」
というグーグルの判断でしょw
0163デフォルトの名無しさん
2011/10/22(土) 23:38:49.40ひれ伏さなかったから、君の無知さ加減が暴かれたわけだがw
0164デフォルトの名無しさん
2011/10/22(土) 23:39:51.90そりゃ、ブラウザ上で動く(実質)唯一無二の言語であるJSに相乗りする以上、動的型付けをベースに考えざるを得ないだろ
0165デフォルトの名無しさん
2011/10/22(土) 23:42:31.76トランスータなんだから、JSを吐こうがネイティブコード吐こうが、Dart自体は静的型付けにできる。
極端に言えば、JSでHaskell処理系を実装すれば完全に静的型付けされたコードをJS上で動かせるだろ。
0166デフォルトの名無しさん
2011/10/22(土) 23:42:50.13静的厨としては、動的厨が動的の素晴らしさをアピールできるなら、是非それにのりたいのだが
0167デフォルトの名無しさん
2011/10/22(土) 23:43:39.71haXeやjs_of_ocamlのような静的型付け言語がある
0168デフォルトの名無しさん
2011/10/22(土) 23:43:42.570169デフォルトの名無しさん
2011/10/22(土) 23:45:41.98前のスレでは何度かやったんだがなあ
今はスレタイ変わっちゃったから「別に大規模開発での静的は否定するつもりねーからいいや」ってなっちゃった
0170デフォルトの名無しさん
2011/10/22(土) 23:45:49.76あれだけドヤ顔で「静的型の優位性をグーグルが認めた」と言いふらしておいて醜態さらしたのに、
馬鹿にするなとか言うのは、馬鹿にされている本人ぐらいなものだろww
0171デフォルトの名無しさん
2011/10/22(土) 23:47:09.88まぁそりゃそうか
大規模開発を動的でやるのがつらいことくらい、1度やったことありゃわかるもんな
0172デフォルトの名無しさん
2011/10/22(土) 23:47:35.19そうなんだよな。静的型付けはドカタ言語としてはピッタリなんだよ。
0173デフォルトの名無しさん
2011/10/22(土) 23:49:48.02トリップつけてくんねーかな
0174デフォルトの名無しさん
2011/10/22(土) 23:50:35.32だからさあ、馬鹿にされたくなかったら、馬鹿なこと言わなきゃいいの。わかった?
0175デフォルトの名無しさん
2011/10/22(土) 23:51:32.54あれ?
そういや、ドカタドカタうるさい奴に
お前どんなシステム作ってるのって聞いたのに
答えがなかったな。
やっぱ、プロじゃないのか。
0176デフォルトの名無しさん
2011/10/22(土) 23:53:10.620177デフォルトの名無しさん
2011/10/22(土) 23:53:21.99少なくとも俺除いてもう1人いるし
>>172で、お前はどんなシステム作ってんの?
0178デフォルトの名無しさん
2011/10/22(土) 23:56:51.150179デフォルトの名無しさん
2011/10/22(土) 23:58:39.450180デフォルトの名無しさん
2011/10/22(土) 23:59:27.34アーキテクチャってものをしっかり考えている所(良いところ)は
自然と開発のルールが出来る。それがいわゆる制約なわけ。
これはアジャイル開発でも同じ事。
何も考えずに適当に好きかって作っていいのは
自分一人プロジェクトだけ。
0181デフォルトの名無しさん
2011/10/23(日) 00:01:05.57開発速度は動的な言語のが高いし柔軟性あるし
折衷案的な選択だわな
互換性に縛られてるJSをオーバーホールするには
ありな仕様だと思うけどね
0182デフォルトの名無しさん
2011/10/23(日) 00:02:59.99それは小さいプログラムだけだよ。
システムとは呼べないような。
0183デフォルトの名無しさん
2011/10/23(日) 00:04:02.270184デフォルトの名無しさん
2011/10/23(日) 00:04:30.80開発速度が動的な言語の方が高いってのが、なんか実感わかないんだよなあ……
ケアレスミスとかが多くなるし
0185デフォルトの名無しさん
2011/10/23(日) 00:06:51.53その当たり前を納得しない動的厨がいたので、じゃあGoogleのDartでドヤ!ってやったらDartがひどい有様だったので逆ドヤされたのが今の状況w
0186デフォルトの名無しさん
2011/10/23(日) 00:07:09.620187デフォルトの名無しさん
2011/10/23(日) 00:09:49.89RubyとかPythonと比べてもDartの方が良いかもしれない。Dart向けのライブラリだったりドキュメントだったりの充実に期待を込めてだけど。
0188デフォルトの名無しさん
2011/10/23(日) 00:10:49.42程度だったら、確かに静的型宣言とかはパワー過剰気味なんだよな
でもそんな小さな仕事、仕事として来ないからなあ・・・
0189デフォルトの名無しさん
2011/10/23(日) 00:14:17.35そういう場合静的だと情報の把握のスピードが違うんだよね。
なにがどれに依存していてどこで書き換えられてとか
影響範囲の追跡がかなり簡単になる。
仮にdataなんて名前のグローバル変数を使っていたとしても、(あくまで仮だからねw)
そこに書きこむコードはほんの数秒で判明するだろう。
0190デフォルトの名無しさん
2011/10/23(日) 00:14:37.301人専任で設計からリリースまで半年ぐらいの条件でも
動的型付けの方が効率良いと思うよ。
メンバが4人になるぐらいから逆転する気がする。
ただし秀才天才しか居ないプロジェクトは除く。
0191デフォルトの名無しさん
2011/10/23(日) 00:17:49.49それ小さくね?
設計からリリースまでで半年なら
開発は2人月ぐらいだろ?
0192デフォルトの名無しさん
2011/10/23(日) 00:18:32.900193デフォルトの名無しさん
2011/10/23(日) 00:19:32.14perlとかphpで泣き見たんか
ヘボに混じってデスマやらされたか。
0194デフォルトの名無しさん
2011/10/23(日) 00:23:29.84PHPで泣き見たわw
0195デフォルトの名無しさん
2011/10/23(日) 00:23:43.41そのくらいの規模でも、ScalaやOCamlなら
動的型付けより効率よく開発できそうだ
一方Javaなら開発に10人月くらいかかりそうw
0196デフォルトの名無しさん
2011/10/23(日) 00:24:57.62ああ、そうだね。それは同意する。
でも、実際にはプログラマーが型を意識できない、スコープを意識できない、だから動的型付けな言語を採用するってパターンなんだよね。
ウェブの開発やってるとそうだとしか思えない。
0197デフォルトの名無しさん
2011/10/23(日) 00:26:07.43動的型付けばかり使ってるわけじゃねーよw.
0198デフォルトの名無しさん
2011/10/23(日) 00:28:50.67それゆえに詳しいことが多い。
「痛くなければ覚えませぬ」
0199デフォルトの名無しさん
2011/10/23(日) 00:29:25.05> なんか静的な型の言語に幻想持ってるのが多いな
逆だ。他人が作った動的型付け言語で作られたシステムを修正するときに
影響範囲がわかりづらいなどの問題点を嫌というほど味わった。
静的型付けの幻想ではなく、動的型付けに幻滅したんだよ。
そもそも昔からCやC++やJavaなどの型付き言語をメインの開発言語で
やってきたんだ。今更幻想なんてものはない。
ただ俺にとってはそれが標準なだけ。
0200デフォルトの名無しさん
2011/10/23(日) 00:30:35.17痛い目にあったら、すぐさま静的型付けが良いってなるだろ。
痛くない方法があることを知らんのか?
0201デフォルトの名無しさん
2011/10/23(日) 00:35:00.39痛くてもすぐに忘れてしまう人がいることを
知っていおいたほうがいい。
0202デフォルトの名無しさん
2011/10/23(日) 00:35:24.10動かなくなったときには、どうしようもなくなっている。
0203デフォルトの名無しさん
2011/10/23(日) 00:37:00.32別に型付けの静的/動的だけが言語の選択条件じゃないから
0204デフォルトの名無しさん
2011/10/23(日) 00:39:33.78何当たり前の事いってんのw
総合的に見て、大規模なら静的型付けの方が
より多くの情報を得られソースコードの把握がしやすいんだよ。
それが選択の理由。
0205デフォルトの名無しさん
2011/10/23(日) 00:41:05.45いまどきJavaなんて誰も選択しないわなw
0206デフォルトの名無しさん
2011/10/23(日) 00:42:56.040207デフォルトの名無しさん
2011/10/23(日) 00:43:39.10確かにIDE駆使した静的型付け言語に比べりゃ多少手間はかかるかもしれんけど
絞り切れないなんて状況は滅多に無いと思うが
0208デフォルトの名無しさん
2011/10/23(日) 00:44:53.490209デフォルトの名無しさん
2011/10/23(日) 00:50:27.60全然違うよ
ほんの数秒で、全プロジェクトの中から
あるクラスのメソッドを的確に調べてくれたりする。
もちろんそのメソッド名がgetであったりしても、無関係のgetと迷うことはない。
動的型付け言語だと対処法的に冗長な名前をつけることがよくある。
タイプ数が増えて、めんどくせぇw
0210デフォルトの名無しさん
2011/10/23(日) 00:53:36.14思い込みで決め付けて容易に間違える。
こういった輩は静的型付けで縛る以外に無いだろう。
0211デフォルトの名無しさん
2011/10/23(日) 00:54:58.77何のシステム作っているのか聞いたが
レスがないようだ。
0212デフォルトの名無しさん
2011/10/23(日) 01:02:07.01書くことにばかり目が言ってしまう。
実際は、書くことよりも読むことのほうがずっと多い。
過去に自分が書いたコードにバグがある。
他人の書いたソースコードを修正する。
他人が書いたソースコードをレビューする。
読むときのことを考えているかという点を見れば
その人がどれくらい出来るの人なのかがわかる。
0213デフォルトの名無しさん
2011/10/23(日) 01:03:58.220214デフォルトの名無しさん
2011/10/23(日) 01:05:19.840215デフォルトの名無しさん
2011/10/23(日) 01:07:07.510216デフォルトの名無しさん
2011/10/23(日) 01:10:30.45型の記述が冗長になりすぎて読みにくかったりするのは確かにあるね。
その冗長な記述を読み解く方が近道だったりもすることも多いが。
0217デフォルトの名無しさん
2011/10/23(日) 01:14:31.77何のシステム作っているのか聞いたが
レスがないようだ。
0218デフォルトの名無しさん
2011/10/23(日) 01:21:36.380219デフォルトの名無しさん
2011/10/23(日) 01:23:59.24JSにトランスレートする場合も原理的にはもう少し型チェックを厳格にできそうだけど
多分そうしないのは効率だよな
0220デフォルトの名無しさん
2011/10/23(日) 06:54:43.72ツールやエディタがやればいい
コーディングルールにしても余計なスペースなんて入れずとも
エディタが調整して見やすくするのが正しい進化だった
読みやすさのためにスペースを何度も叩くのはバカらしい
言語仕様に何もかもを含めすぎてる
もっとツールやIDEのことを考えろ
0221デフォルトの名無しさん
2011/10/23(日) 07:01:31.8620年以上前からある機能
型推論とフォーマットを同列にしてる時点で
0222デフォルトの名無しさん
2011/10/23(日) 07:26:24.030223デフォルトの名無しさん
2011/10/23(日) 07:32:45.09ドカタが「オマエノカイハツケイケンヲイエー!」とか喚いていたから、
まずはお前の経験を書くのが先だろと訊いてみたのに、未だ回答がない。
つまり、そういうことだ。
0224デフォルトの名無しさん
2011/10/23(日) 07:36:37.75君さあ、自動フォーマットも型推論も30年以上の歴史があることも知らないの?
静的厨って本当に不勉強だなあ。
0225デフォルトの名無しさん
2011/10/23(日) 07:41:14.030226デフォルトの名無しさん
2011/10/23(日) 07:42:37.49動的言語で良質なコードを書けるプログラマは単価がドカタの2倍はいくし、
工期全体でスケジュールを押さえるのが難しい。
技術的興味のないプロジェクトは断わるか、ふっかけるのが普通だし。
ドカタ動員で押し切れたほうが管理する側はラクなんだよ。
0227デフォルトの名無しさん
2011/10/23(日) 07:45:08.29君が言う動的型のメリットと、なぜそれが大規模で消えるのかを説明せよ
0228デフォルトの名無しさん
2011/10/23(日) 07:52:00.850229デフォルトの名無しさん
2011/10/23(日) 08:06:25.49テンプレートの実体化をいちいち書いている人は多い
それが無くなるまでは、型推論が普及したとは言えない
0230デフォルトの名無しさん
2011/10/23(日) 08:12:25.99真の型推論が実装されているのはMLやHaskellといった一部の関数型言語だけ
とても型推論が普及したなんて言える現状ではない
また、C#/Java/C++のような「動的型付けな静的言語」のいい加減さを考えれば、
動的型付け言語の開発効率の良さは検討に値する
0231デフォルトの名無しさん
2011/10/23(日) 08:14:00.26例: Yコンビネータ
0232デフォルトの名無しさん
2011/10/23(日) 08:18:46.19Haskellの型推論は完全じゃないよ。MLの型推論は完全だけど。
0233デフォルトの名無しさん
2011/10/23(日) 08:21:25.42効率は価値があるけど動的静的の選択には価値がない
型推論と開発ツールの二択なら開発ツールの方が効率がいいから価値がある
開発効率を考えるなら全ての型推論を持つ言語はVBに劣る
カードの性質を理解してない奴が語るな
型推論という戦術はIDEという戦略の前では無価値に等しい
0234デフォルトの名無しさん
2011/10/23(日) 08:24:16.70ドカタにとってはそうなんだろうね
0235デフォルトの名無しさん
2011/10/23(日) 08:28:55.400236デフォルトの名無しさん
2011/10/23(日) 08:39:53.35ツールやエディタがそれぞれ個別に型推論を実装するなんて無駄もいいところだろ
きちんと言語仕様で決めて、コンパイラが型推論するほうが良いに決まってる
エディタが型情報を必要とするならコンパイラに問い合わせれば良い
0237デフォルトの名無しさん
2011/10/23(日) 08:41:38.98>言葉に詰まって発言者の人格や職をなじる奴はバカだし
崇高な芸術プログラミングを追及するなら、lispという結末が見えている
選民思想に染まったコミュニティは常に少数派になる
それを主張する奴が、地雷が埋まってるとわかってて踏む美学の持ち主なら
その選択肢の末は滅びしかないだろう
ランチェスターの法則を理解するなら
多数のドカタに価値があって
崇高なプログラミングの価値はそれ以下だということも理解できる
まずは多数のドカタを上回る成果を挙げられる何かを提示してみなさい
それができないなら多数のドカタが最強ということだ
0238デフォルトの名無しさん
2011/10/23(日) 08:49:57.78型推論にはコストに見合った価値がない
それを実装し活用する労力以上の価値がない
型推論を言語仕様に含めることで
プログラミング言語、開発ツールそれら全てに実装が必要となる
その実装コストを上回る成果が型推論の採用で得られるとは思えない
その程度ならコード整形ツールのおまけ機能として実装すればいいだけ
俺の主観では
型推論を採用した理由はIDEの実装を困難にすることで
競争を発生させること
IDEによる開発者の囲い込みを行うことで
開発ツールから利益を得ること
つまりバカを騙して効率低下させて金を得ようという
そういう悪意にしか見えない
簡単にIDE作れたら金儲けできないよね
0239デフォルトの名無しさん
2011/10/23(日) 08:53:44.74コンパイラだけが型推論を実装すればいいって
書いてるの読めませんか?
文盲ですか?
0240デフォルトの名無しさん
2011/10/23(日) 09:06:39.70お前は無駄を主張した
だから型推論を採用する方が無駄になるという反論をすればいいのか
>型推論にはコストに見合った価値がない
つまり無駄だ
企業は営利目的で動く
企業が主導している言語の仕様は営利を優先する
金になるなら言語仕様を歪める選択肢がある
java c# dart全て企業主導
なら当然、余計なものが含まれる可能性がある
あの人たちが純粋にすばらしい言語を作り出すために動いている
そう考えるのはちょっと甘いんじゃないの
型推論が罠仕様だと疑う俺の考えの方が自然だよ
最強言語cに型推論がない
これだけでも十分すぎる理由だ
存在が理不尽で無駄でメリットがなくても、多数に受け入れられたら
それは金になるし存在理由になる
そういうものはこの世界にありふれている
型推論は世界にありふれている無駄な金儲けの手段になりうる
0241デフォルトの名無しさん
2011/10/23(日) 09:13:38.840242デフォルトの名無しさん
2011/10/23(日) 09:16:01.59「IDEの実装が大変だから」以外に言えてないのは凄いね。
それすら>>236で反論されてるけど。
0243デフォルトの名無しさん
2011/10/23(日) 09:17:24.74http://queue.acm.org/detail.cfm?id=2038036
0244デフォルトの名無しさん
2011/10/23(日) 09:27:50.96型推論を採用するメリットはほんの少し、それすらもツールで補える
可読性の低い一行に価値があるというのならそれを使えばいい
俺は可読性の高い十行に価値があると考えるからそれを使う
IDEや開発ツールを駆使して長くて読みやすいコードを書く
俺は可読性の高い十行を理解する人の方が
人類の中では圧倒的多数派であると確信するし
そっちの方が目的達成の近道だと考えてるだけ
0245デフォルトの名無しさん
2011/10/23(日) 09:35:27.42おそらくマトモなサイズのコードを書いたことないのだろう。
HaskellやMLで型推論に頼ったコードの型エラーを直すのは、
動的型言語の実行時エラーを直すよりずっと難しい。
だから、本当にHaskellやMLでまとまったサイズのコードを書く香具師は
できるだけ型を明示的に宣言する。
0246デフォルトの名無しさん
2011/10/23(日) 09:44:24.92つーか、トップレベルの関数は型注釈を書くのが当たり前
ただし、自分で一から型を書かなくても、処理系が推論した型を出力させて、
それをそのままコードとして使うなんて日常的に行われてる
OCamlは型エラーがでても、その直前までの型推論の結果を出力してくれる
(そしてエディタで表示できる)から、型注釈を省略してもデバッグが大変にはならない
使った事も無いのに聞きかじりでテキトーなこと書くなよ
0247デフォルトの名無しさん
2011/10/23(日) 10:00:10.96それは動的言語を撃ち落とすための弾丸だったような気がするが
なんで仲間割れしてるの
0248デフォルトの名無しさん
2011/10/23(日) 10:14:39.20型注釈厨(別名Dart厨)がいるから
0249デフォルトの名無しさん
2011/10/23(日) 10:15:31.790250デフォルトの名無しさん
2011/10/23(日) 10:16:26.22コンパイル出来る状態でしか補完効かないIDEとか勘弁して欲しい。
コンパイラはコンパイラで推論して、
エディタはエディタなりの推論をするのが
正しいと思う。
0251デフォルトの名無しさん
2011/10/23(日) 10:23:25.28静的型安全性が欲しい人 -> 静的型付け言語
型注釈を強制したい人 -> 型推論の無い静的型付け言語
簡潔に書きたい/読みたい人 -> 動的型付け言語、型推論のある言語
実行時メタプログラミングしたい人 -> 動的型付け言語
0252デフォルトの名無しさん
2011/10/23(日) 10:25:49.31途中までコンパイルできれば、そこまでの型推論の結果をコンパイラにもらえばいいだろ
MLはそういうことができる言語仕様だぞ
0253デフォルトの名無しさん
2011/10/23(日) 10:28:04.40型が指定できないのは、問題外。
0254デフォルトの名無しさん
2011/10/23(日) 10:32:33.21型注釈を明示できない言語って無いだろうから杞憂では? > 型推論
0255デフォルトの名無しさん
2011/10/23(日) 10:42:13.79インスタンス変数からメソッドを補完することが無いから、
補完そのものが難しくない
(動的型付け言語でも"モジュール名.関数名"の補完は難しくないのと同じ)
少なくとも関数型言語では型推論はメリットのほうが遥かに大きい
OOPにおける型推論がどうあるべきかは、まだ多いに議論の余地があるだろう
型推論しないのも一つの答えかもしれない
0256デフォルトの名無しさん
2011/10/23(日) 11:23:32.410257デフォルトの名無しさん
2011/10/23(日) 11:33:25.62PHP最高だろ
0258デフォルトの名無しさん
2011/10/23(日) 11:37:29.64そこからかなりいろんなことが出来るようになるよ。
型がなくても人間には自明だから、いいじゃないかというやつもいる。
でもコンピュータにとって自明にすることで、
様々なコンピュータ処理が可能になる。
0259デフォルトの名無しさん
2011/10/23(日) 11:39:22.150260デフォルトの名無しさん
2011/10/23(日) 11:39:38.97動的型付け言語を批判する資格があるだろうか
0261デフォルトの名無しさん
2011/10/23(日) 11:49:39.07それに、モジュールと型が区別できない言語なんて聞いたことがない。
0262デフォルトの名無しさん
2011/10/23(日) 12:01:51.87最近は大規模な開発になるとフレームワークがオブジェクトの生成を隠蔽したり
共通の処理はインターフェースや基底クラスを使って記述したりするから
あんまり追いやすいって感じはしないな
型うんぬんよりフレームワークやパッケージなんかの基礎知識のほうが重要だと思う
0263デフォルトの名無しさん
2011/10/23(日) 12:03:32.22名前空間の指定(クラスは一種の名前空間として機能する)を
同じ構文 obj.func() でやってしまう
動的型付け言語でこれと同じ事をすると、型宣言を省略したついでに
名前空間の宣言も省略することになるので、補完ができなくなる
しかし、本来型と名前空間は別のものなので、マルチメソッドを採用して
module.func(obj) という構文を使えば補完できるようになる
0264デフォルトの名無しさん
2011/10/23(日) 12:06:13.81効率委員だろ
0265デフォルトの名無しさん
2011/10/23(日) 12:13:24.64言ってることがずれてるぞ。
オブジェクトの生成をフレームワークがしたからといって
その生成を入れる変数に型は書いてある。
インターフェースや基底クラスを使って記述しているならば、
そのインターフェースや基底クラスを使ってるクラスを
見つけ出さないといけないわけだが、
その見付け出す行為も、型があれば簡単にできる。
基礎知識は大事だからというがそれは別の話で関係ない。型は大事だ。
○○の方が重要だからといって、もう一方の方はどうでもいいと思わせるのは
ただのミスリード。
0266デフォルトの名無しさん
2011/10/23(日) 12:15:29.90効率悪いよ。
それは文字列の扱いが面倒なのと、
メモリの扱いが面倒だから。
お前は卑怯者だ。
0267デフォルトの名無しさん
2011/10/23(日) 12:17:51.260268デフォルトの名無しさん
2011/10/23(日) 12:23:52.99Cは弱い型付けの静的言語です。
(効率はともかく、Win32APIで出来ない事は無いんだろうけど)
0269デフォルトの名無しさん
2011/10/23(日) 12:42:14.17効率委員だろ
○○に嫌いな言語を
××に無茶な要求を入れてください
0270デフォルトの名無しさん
2011/10/23(日) 12:46:30.90公立医員だろ?
0271デフォルトの名無しさん
2011/10/23(日) 12:46:52.52じゃあJavaで作ってみろや
大規模開発なら得意なんだろ?
大規模なCMS作ってミロや
0272デフォルトの名無しさん
2011/10/23(日) 12:48:49.03こんなの
オープンソースのJAVAで作られたCMS「Apache Lenya」
http://blog.verygoodtown.com/2010/03/open-source-java-cms-apache-lenya/
エンタープライズでも使えるJava製CMS「Magnolia」
http://www.moongift.jp/2008/09/magnolia/
0273デフォルトの名無しさん
2011/10/23(日) 13:09:11.330274デフォルトの名無しさん
2011/10/23(日) 13:11:05.89やっぱ止まってんのな。否定する人ってその頃から知識が。
0275デフォルトの名無しさん
2011/10/23(日) 13:18:06.480276デフォルトの名無しさん
2011/10/23(日) 13:25:14.93それしかねえのかよ
0277デフォルトの名無しさん
2011/10/23(日) 14:03:53.920278デフォルトの名無しさん
2011/10/23(日) 14:20:00.14動的型言語の良い所を取り入れつつ、動的型言語より大規模開発に向く
良い事じゃないか
0279デフォルトの名無しさん
2011/10/23(日) 14:25:12.540280デフォルトの名無しさん
2011/10/23(日) 15:01:45.270281デフォルトの名無しさん
2011/10/23(日) 15:09:36.590282デフォルトの名無しさん
2011/10/23(日) 15:16:16.14どっちかと言うと、それは手続き型か関数型かの問題の様な
0283デフォルトの名無しさん
2011/10/23(日) 15:26:37.29でも手続き型でも最近の動的言語って関数型的なリスト操作導入してるの多くね?
俺がそういうのしか触ってないだけ?
0284デフォルトの名無しさん
2011/10/23(日) 15:28:22.270285デフォルトの名無しさん
2011/10/23(日) 15:29:37.150286デフォルトの名無しさん
2011/10/23(日) 16:06:46.85うん
だから、動的型か静的型かはあまり関係ないよね
それ言ったらruby/pythonより静的型のhaskell/OCmalの方が得意というイメージ
0287デフォルトの名無しさん
2011/10/23(日) 16:08:45.880288デフォルトの名無しさん
2011/10/23(日) 16:10:20.080289デフォルトの名無しさん
2011/10/23(日) 16:15:19.76成る程、確かにそうだな
0290デフォルトの名無しさん
2011/10/23(日) 16:27:58.11IDE
ビットマップディスプレイ
GUI
関数プログラミング
オブジェクト指向プログラミング
論理プログラミング
単体テスト
XP/アジャイル開発
0291デフォルトの名無しさん
2011/10/23(日) 16:34:50.75>>287だから、>>290を実験的に作るのが容易で、静的言語で完成度を上げる流れが脈々と・・・
0292デフォルトの名無しさん
2011/10/23(日) 16:38:42.54メタプログラミング/レフレクション
イベント駆動
連想配列
も、だいたいLISP/Scheme/Smalltalk界隈だな。
0293デフォルトの名無しさん
2011/10/23(日) 16:42:41.70そゆこと
精鋭の動的型プログラマが開拓して、5-10年の試行錯誤を経て定型化した技術を
大量の静的型ドカタがドヤ顔で乱用するわけさw
0294デフォルトの名無しさん
2011/10/23(日) 16:58:47.470295デフォルトの名無しさん
2011/10/23(日) 17:07:21.49(forとかの実装はその頃らしい)
何の言語の影響受けたんだろ?Fortlan?
0296デフォルトの名無しさん
2011/10/23(日) 17:10:00.23取り込んでいたも何も、Lispは今も昔も「純粋な関数型ではない」言語だよ
てかFORTRANの影響を受けていない高級言語はほとんど無いだろう
0297デフォルトの名無しさん
2011/10/23(日) 17:19:56.441960に論文が出て、後にLISPに実装された。
0298デフォルトの名無しさん
2011/10/23(日) 18:45:32.38生産性高いな。
具体的なデータもあるんだから
しょうがない。
0299デフォルトの名無しさん
2011/10/23(日) 18:56:10.380300デフォルトの名無しさん
2011/10/23(日) 19:02:07.46そういう場合静的だと情報の把握のスピードが違うんだよね。
なにがどれに依存していてどこで書き換えられてとか
影響範囲の追跡がかなり簡単になる。
仮にdataなんて名前のグローバル変数を使っていたとしても、(あくまで仮だからねw)
そこに書きこむコードはほんの数秒で判明するだろう。
0301デフォルトの名無しさん
2011/10/23(日) 19:11:28.690302デフォルトの名無しさん
2011/10/23(日) 19:20:01.08そのためには、実行時メタプログラミングだけじゃなく
コンパイル時メタプログラミングを導入しないといけないだろうね。
0303デフォルトの名無しさん
2011/10/23(日) 19:22:28.47実装は大変になるが。
C#に似てくるなあ。
0304デフォルトの名無しさん
2011/10/23(日) 19:23:06.85C++みたいなのはだめだよ。
C++は数学的と言うか、定義でメタプログラミングしている。
はっきり言って、定義でメタプログラミングするのは難しい。
じゃなくて、コードでメタプログラミングする。
コンパイル時に(実行時メタプログラミングみたいに)
コードを実行し、そのコードで書き換える。
0305デフォルトの名無しさん
2011/10/23(日) 19:26:53.90出来る言語としてPerlがある。
ただ惜しいことに、静的型付け言語ではない。
0306デフォルトの名無しさん
2011/10/23(日) 19:27:34.03> 仮にdataなんて名前のグローバル変数を使っていたとしても、(あくまで仮だからねw)
> そこに書きこむコードはほんの数秒で判明するだろう。
え?まさか、動的型付け言語では、それができないと思っている?
おまえみたいのがいるから静的型はドカタとか無知とか言われるんだよ (-_-#)
0307デフォルトの名無しさん
2011/10/23(日) 19:28:32.06少なくともPythonの場合、型デコレータはコンパイル時メタプログラミングで実装されているが?
0308デフォルトの名無しさん
2011/10/23(日) 19:33:31.29なんでアホらしすぎてスルーされてるものをむしかえすんだ?
相手グループの中で一番アホな人間を狙い撃ちして、相手グループはアホとか言われてもなぁ
0309デフォルトの名無しさん
2011/10/23(日) 19:36:04.390310デフォルトの名無しさん
2011/10/23(日) 19:55:11.850311デフォルトの名無しさん
2011/10/23(日) 20:05:49.440312デフォルトの名無しさん
2011/10/23(日) 20:18:47.060313デフォルトの名無しさん
2011/10/23(日) 21:18:51.71Javaが多いのか考えたことある?
0314デフォルトの名無しさん
2011/10/23(日) 23:16:58.97考えたことある?
0315デフォルトの名無しさん
2011/10/23(日) 23:24:13.68さすがに、あそこまでのアホは静的型付け派でも一握り
(ぶっちゃけて言えばJavaドカタ)だけだと思ってるよ
0316デフォルトの名無しさん
2011/10/24(月) 02:56:59.280317デフォルトの名無しさん
2011/10/24(月) 03:34:36.790318デフォルトの名無しさん
2011/10/24(月) 07:10:33.01つまり最初からドカタのための言語として設計されてる
だからJavaドカタがドカタなのは正しい姿なんだよ
0319デフォルトの名無しさん
2011/10/24(月) 09:57:16.83当時のアメリカのブルーカラーは、生産現場に近い、ぐらいの意味。
当時は単純な事務計算は機械化が進んでいたが、より広い分野の生産現場で使える適切な言語がなかった。
0320デフォルトの名無しさん
2011/10/24(月) 10:21:59.560321デフォルトの名無しさん
2011/10/24(月) 10:36:52.93必死になって話をそらしてるんですね、わかります
0322デフォルトの名無しさん
2011/10/24(月) 12:52:38.34他の連中は人格攻撃や揚げ足取りばかりで聞いてられない
結論は出たね
0323デフォルトの名無しさん
2011/10/24(月) 13:11:47.72正)自分の耳に心地よいだけ
0324デフォルトの名無しさん
2011/10/24(月) 13:30:12.800325uy
2011/10/24(月) 14:35:21.29ずいぶん譲歩してきたな
一般的な手法での大規模開発では効率悪いよ
JAVAなんかと同じ方法で大規模開発しようとしたら乙ル
動的言語で大規模開発やるなら、ファイル単位でかなり細かく分ける必要がある
設計できる子が少ない
0326デフォルトの名無しさん
2011/10/24(月) 14:38:37.820327デフォルトの名無しさん
2011/10/24(月) 14:42:46.530328デフォルトの名無しさん
2011/10/24(月) 15:34:59.700329デフォルトの名無しさん
2011/10/24(月) 16:05:58.79んなこたーない
XOOPとか何人の開発者が関わってると思ってんだ?
発想がまるで逆だよ。
動的言語だと担当分けて抱え込むより、
細かなコミットでCIな開発を進めるのが手筋。
0330デフォルトの名無しさん
2011/10/24(月) 16:35:37.36というか「PHP以外で」...など高機能なOSSのCMSがない理由を教えてください、
の方が適切な質問だと思う。
CMSに関しては動的静的云々以前にPHPの特殊事情だと考えた方が良い。
RubyやPerlのCMSもPHPのそれらに比べたら知名度や活発度は比較的悲惨だと思うし、
逆にエンタープライズに行くとJavaやASP.NETになる。
http://en.wikipedia.org/wiki/List_of_content_management_systems
で、理由だけれども、これは言語の性質云々以前に「人口」だと思う。
前提としてPHPNukeやMediaWikiを使う沢山のユーザがかつて沢山いて、その中から
プラグインに手を入れたり自作をし始めるユーザが出てきて、そのうち既存のCMSに
不満で心機一転して自分のCMS開発しちゃうぞ〜という人が出てくる。
ユーザが多い分そういうサイクルが頻繁に回って、結果的にDrupalみたいなのが生き
残るんじゃないのかな。
0331デフォルトの名無しさん
2011/10/24(月) 16:37:23.430332デフォルトの名無しさん
2011/10/24(月) 17:10:48.330333デフォルトの名無しさん
2011/10/24(月) 17:16:57.770334デフォルトの名無しさん
2011/10/24(月) 17:21:21.33いや無いわけはないのだが完全に視野の外だわ。
0335デフォルトの名無しさん
2011/10/24(月) 18:00:42.97汎用言語の仕様の話からずいぶんと離れたな
それで、そのCMSとやらはチューリング完全なんだよな
そうでないならBrainfuckの方がよほどましなんだけど
0336デフォルトの名無しさん
2011/10/24(月) 18:43:50.11それだけかな。
0337デフォルトの名無しさん
2011/10/24(月) 18:46:08.83威張れるほどのものはないんじゃないのか
http://stackoverflow.com/questions/184742/what-is-a-good-cms-written-in-python-and-not-plone
Ploneはbloatedだから避けたいんだけど他になんかいいのないのって質問
0338デフォルトの名無しさん
2011/10/24(月) 18:53:46.020339デフォルトの名無しさん
2011/10/24(月) 19:02:26.500340デフォルトの名無しさん
2011/10/24(月) 19:35:29.13普通は両方使い分けるし
必要ならチューリング完全でないDSLも作るw
0341デフォルトの名無しさん
2011/10/24(月) 19:47:41.23TeXやPostScriptはチューリング完全だけど、ドキュメントフォーマットとして
停止性が判定できないのはまずいから、PDFってわざとループや再帰を外したんだよな
確か
0342デフォルトの名無しさん
2011/10/24(月) 20:10:00.58Rubyなんてrorとredmineを除いて素晴らしいフレームワークもCMSも皆無
0343デフォルトの名無しさん
2011/10/24(月) 20:14:04.40性能稼ぐためにjavaに行くみたいだけど
0344デフォルトの名無しさん
2011/10/24(月) 20:27:31.830345デフォルトの名無しさん
2011/10/24(月) 22:25:04.70ぶっちゃけRubyはワンライナーテキストフィルタ特化の言語でいいと思う
0346デフォルトの名無しさん
2011/10/24(月) 23:06:38.530347デフォルトの名無しさん
2011/10/25(火) 00:15:08.72島根県CMS - Wikipedia
http://ja.wikipedia.org/wiki/島根県CMS
島根県CMS公式サイト
http://projects.netlab.jp/PrefShimaneCMS/
0348デフォルトの名無しさん
2011/10/25(火) 00:23:02.440349デフォルトの名無しさん
2011/10/25(火) 00:24:31.360350デフォルトの名無しさん
2011/10/25(火) 00:47:07.75Sinatra,Ramaze,Rackなど増えてるだろ
0351デフォルトの名無しさん
2011/10/25(火) 00:47:32.96http://radiantcms.org/
【ハウツー】10分でサイト構築? Radiantで簡単CMS
http://journal.mycom.co.jp/articles/2006/09/16/radiant2/index.html
Radiant CMS Japan - Ruby on Rails製オープンソースCMSの日本語サポートサイト
http://www.radiantcms.jp/
Design Recipe 別館 Blog - Radiant CMS - フレキシブルな Ruby On Rails ベースの CMS
http://blog.designrecipe.jp/2009/7/27/about-radiant/
0352デフォルトの名無しさん
2011/10/25(火) 00:52:07.470354デフォルトの名無しさん
2011/10/25(火) 06:14:54.31329 担当分けするな、こまめにコミットしてCIしろ!
どう考えたら同じに見えるんだろうwww
0355デフォルトの名無しさん
2011/10/25(火) 07:36:10.48てか、Rubyってそのポジションを狙ってる言語なんじゃないの?
0356デフォルトの名無しさん
2011/10/25(火) 07:55:44.091ライナー的な短い勝負でperlに勝つのは無理だろう
1pageなら別だが
0357デフォルトの名無しさん
2011/10/25(火) 12:12:57.87担当者を分けるためじゃなく、可読性向上のために
ファイル単位に細分化する(細かすぎるのも良くないが)
特にPerlやPythonはファイルスコープがあるので
スコープを分割する意味もある
0358デフォルトの名無しさん
2011/10/25(火) 14:14:12.88何もわかってないドカタだから
> 担当者を分けるためじゃなく、可読性向上のために
> ファイル単位に細分化する(細かすぎるのも良くないが)
みたいな、主語がないクソ文を書いてドヤ顔ができるんだろうな。
0359デフォルトの名無しさん
2011/10/25(火) 20:16:50.02好戦的すぎるだろwww
0360デフォルトの名無しさん
2011/10/25(火) 21:42:27.86ドカタがドカタって言ってるのを見ると
笑えるんだけどwww
0361デフォルトの名無しさん
2011/10/25(火) 23:33:44.900362デフォルトの名無しさん
2011/10/25(火) 23:40:41.730363デフォルトの名無しさん
2011/10/26(水) 03:30:26.59それが、便利だったから、予定以上に使われたわけだが。
0364デフォルトの名無しさん
2011/10/26(水) 06:34:36.240365デフォルトの名無しさん
2011/10/26(水) 10:40:28.61http://www.haskell.org/haskellwiki/Comparison
0366デフォルトの名無しさん
2011/10/26(水) 12:25:43.06それはハスケラ特有の症例で、心の病の一つ
ハスケルという言語を使っていると、世の中のあらゆる事柄すべてが
ハスケルを中心に廻っているように見えるらしい
従って、あらゆる関数型言語は静的実行かつ静的型付けでなければならないし、
遅延評価が常識であり、一切の副作用は認めようとしない
ハスケラにとって関数型言語とはハスケルのことであり、
その窓から見える世界が彼らのすべて
0367デフォルトの名無しさん
2011/10/26(水) 12:29:30.75ハスケル
ハスケラ
0368デフォルトの名無しさん
2011/10/26(水) 12:34:42.64どれも思考停止という意味では仲間同士
0369デフォルトの名無しさん
2011/10/26(水) 14:22:28.42どこの怪獣だよ
0370デフォルトの名無しさん
2011/10/26(水) 16:52:34.340371デフォルトの名無しさん
2011/10/26(水) 19:33:29.01小さい頃はまだ可愛いんだけれども大きくなってプロジェクトを仕切るように
なったりすると個体によっては怪獣になりがち。
特に老齢体のコボラが若いジャバラをいじめている光景は時々散見される。
怪獣クラスのハスケラはまだ見たことが無いなぁ。
0372デフォルトの名無しさん
2011/10/26(水) 19:36:17.390373デフォルトの名無しさん
2011/10/26(水) 20:28:02.82人類だって、地球上に数百人しかいなかった時期があったからな!
0374デフォルトの名無しさん
2011/10/26(水) 23:09:02.250375uy
2011/10/27(木) 01:57:38.34ええええ・・・・・・・やばいよお前
>>325の、どこに「担当」なんて言葉があるの
マジ大丈夫か・・・・・・・
一応、俺の考えとほぼ同じなわけで、uyコテの形式上、ど派手に煽るわけにもいかないから
一人で勘違いして突っ走っちゃうと・・・
対処に・・・困るんすけど・・・
0376uy
2011/10/27(木) 02:05:10.16>>358 は、分かってない
ここまで、圧倒的に知識劣ってる相手が
しかも俺ではなく、他の名無しに論破されて発狂しちゃう様を見ると・・・ とても切ない気持ちになる
俺が1レスでトドメをさして論破してやれば、他の名無しに痛いところつかれたレスをくらうこともなかったかもしれない
かれの心のダメージを最小限に抑えられたかもしれない
次からは、やっぱり長文になっても1レスで論破してやるようにするよ。みててかわいそーだ
冬は寒いな.......
0377デフォルトの名無しさん
2011/10/27(木) 06:05:35.200378デフォルトの名無しさん
2011/10/27(木) 07:31:49.910379デフォルトの名無しさん
2011/10/27(木) 11:11:57.04人格攻撃
特定の集団を攻撃
職業や身体的特徴などで差別
主観の押し付け
議論と関係ありそうで無関係な事実を突きつけて反論を要求する
エア敵を作り出して攻撃し始める
議論のルールを守れない奴にプログラムのルールを守れるのだろうか
0380デフォルトの名無しさん
2011/10/27(木) 12:04:35.20纏めると、「詭弁」。
0381uy
2011/10/27(木) 12:25:09.41うわあああああああああwwwwwwwwww
ついに自演とかいいはじめちゃったよおおおおおおおおwwwwwwww
病気wwwwwwwwwwwwww発覚wwwwwwwwwwww
どうするのおまえ???????wwwwwwWWWWWWww
自分を煽る奴は全員uyかwwwwwwwwwww 自分を煽る名無しは全員uyかwwwwwwwww都合がいいなうぇwwwwwwwww
病気かよ・・・・・・・・
0382uy
2011/10/27(木) 12:27:47.62最近はこんな奴がいるんだな
そのうちリアルで誰かに説教されても
「こいつuyだろ・・・・・」とか思いはじめそうで怖い
病気だよそれ病気
治療方法は・・・なんだ???
この業界から消えろとしか
0383デフォルトの名無しさん
2011/10/27(木) 12:49:05.71勝利目標のない戦争
走り続けていたらいつかゴールが見えてくる
敵を倒し続けていればいつか戦争は終わる
そうやって全ての人生を費やそうとする無数の人たち
その人たちにゴールがないことを教えてあげたい
敵を倒し続けても戦争は終わらないことを伝えてあげたい
すべてのにちゃんねらーにありがとう
そしてuy君、卒業おめでとう
0384デフォルトの名無しさん
2011/10/27(木) 16:31:31.91ブザマ (・∇ ・)
0385デフォルトの名無しさん
2011/10/27(木) 21:01:25.71自宅の壁とお話してて下さいね
0386デフォルトの名無しさん
2011/10/28(金) 23:25:48.23http://capsctrl.que.jp/kdmsnr/wiki/bliki/?DynamicTypeCheck
0387デフォルトの名無しさん
2011/10/29(土) 10:04:03.52動的言語で効率は上がるけど、
ドカタが使っても効率的かは分からない、か
妥当な結論だな
0388デフォルトの名無しさん
2011/10/29(土) 10:09:11.52動的言語は効率下がるよ。
ただ、人数が多くなると、高いレベルの人ばかり
集めるのはコストもかかるし現実的ではないから
必然的にレベルも下がる。
そこがレベルが原因だと勘違いする元凶だけど、
実際は人数が多くて大規模になれば
レベルに関係なく、効率は下がる。
0390デフォルトの名無しさん
2011/10/29(土) 10:48:50.31職業や身体的特徴などで差別
個人の能力の評価
プログラムに関係する話をしていない
文体を丁寧にしたところで
発言の目的が見え透いているから何を考えてるか手に取るようにわかる
自分を天才だと認めて欲しい、自己顕示欲
他人を見下して優越感に浸って虚栄心を満たしたい
自己顕示欲を満たすためにドカタに対するレイシズムを展開する
みんなが黙ってるのはお前に反論できないからじゃなく
関わりたくないから
俺がお前に関わってるのは他人の精神を分析する能力を向上させたいから
お前のために無償の労力や賞賛を投げかける奴はいない
こういう行動で金になるのは政治的目的や企業活動を妨害する目的、ヤクザだな
ネットヤクザ
0391デフォルトの名無しさん
2011/10/29(土) 10:49:20.16要約になってませんよw
0392デフォルトの名無しさん
2011/10/29(土) 10:53:49.01> Rubyには、あまり有能ではない開発者をエラーから守るよりも、 有能な開発者が
> さらにうまく物事を成し遂げられる環境のほうがよいという哲学がある。
> 我々がRubyについてよく耳にするのは、動的型付、メタプログラミングのサポート、追いにくいコードを任せられるツールの欠如である。
> 実際にこれらが我々にとって問題となったことはない。 聞いた話によると、主流の言語と比べ、
> 同じ機能を書くときのコードの量が少なく、より簡単にコードをクリーンに保てるようだ。
> とは言うものの、我々の状況を忘れないで欲しい。 ThoughtWorksの開発者たちは、
> 能力という点では平均よりも高く、エクストリームプログラミングのような規律ある手法に熱心な者ばかりである。
> 我々はテスティングに非常に重きを置いており(Rubyコミュニティでも大切だとされている)、
> テストによってコードをよりクリアに保つことができている。
> つまり、我々の経験が、能力や規律の少ない開発者でもうまくいくのかどうかは分からない。
0393デフォルトの名無しさん
2011/10/29(土) 11:02:43.44結局これに尽きるわw
0394デフォルトの名無しさん
2011/10/29(土) 11:04:10.26図2: 各年ごとのプロジェクトの工数を表したストリップチャート
図3: 国別のプロジェクトの工数を表したストリップチャート
デーはこれだけ。
あとは、個人の感想ばかり。
グラフがあれば、客観的なデータだと勘違いする奴は
死んでほしい。
0395デフォルトの名無しさん
2011/10/29(土) 11:06:51.12我々天才は
○○を必要としない
××を使う
つまり我々と同じことをやってもバカだと失敗する
反論した奴には、それはお前がバカだからだと最初に釘をさしておいただろう
まじで軽蔑する、支持しない
0396デフォルトの名無しさん
2011/10/29(土) 11:07:23.57>>299で根拠を言えと言われたら
>>300を返すようなスレですからねwww
グローバル変数www
0397デフォルトの名無しさん
2011/10/29(土) 11:17:36.20人格否定しかできないの?
0398デフォルトの名無しさん
2011/10/29(土) 11:20:17.38になるかもしれないって書いてるから、ことさら動的型付け言語だけを
贔屓してるわけじゃないんだな
0399デフォルトの名無しさん
2011/10/29(土) 11:24:16.50同じというのは肯定でも否定でもないよ
0400デフォルトの名無しさん
2011/10/29(土) 11:27:52.93http://practical-scheme.net/trans/icad-j.html
0401デフォルトの名無しさん
2011/10/29(土) 11:47:44.07動的型言語が優れてるわけじゃない
0402デフォルトの名無しさん
2011/10/29(土) 11:48:53.380403デフォルトの名無しさん
2011/10/29(土) 12:12:15.36この2つはワンセットだな
にしてもレスはえぇよwwどんだけwww
0404デフォルトの名無しさん
2011/10/29(土) 12:28:41.57この争いはわしが育てた
もしくはまじめな話になるのを妨害しているのか
荒らしてる奴の精神分析して理解しておけば
リアルでいやな目に遭うのを回避できるからもっとやって欲しい
0405デフォルトの名無しさん
2011/10/29(土) 12:49:35.76それ、静的型厨房の常套句だねえ♪
0406デフォルトの名無しさん
2011/10/29(土) 13:07:16.42鸚鵡返しして
集団の見解とみなして攻撃するのか
挑発が目的ってところだな
明確な敵がいて戦って勝ち続ければ俺の勝利と考えてるのなら
>>383
end
議論と討論の区別がついてなくて
議論している人に討論しかけてるというパターンか
0407デフォルトの名無しさん
2011/10/29(土) 13:19:38.84虚栄心を満たしたいのだろうか
自分がバカにしてる他人に認められてうれしいわけないから
ストレス解消程度にしか考えてないのだろうな
もしくは他人に時間を無駄に使わせることに喜びを感じたり
他人が自分のために時間を割くことに喜びを感じてるのだろうか
寂しいからかかまってかまって欲しいの
0408デフォルトの名無しさん
2011/10/29(土) 16:03:18.690409デフォルトの名無しさん
2011/10/29(土) 16:07:25.700410デフォルトの名無しさん
2011/10/29(土) 16:16:15.17馬鹿な静的厨はあっさり騙されてくれるってこと
0411デフォルトの名無しさん
2011/10/29(土) 16:27:08.020412デフォルトの名無しさん
2011/10/29(土) 16:37:08.49そういうマヌケなことはECの仕様書読んでからにしたら?
0413デフォルトの名無しさん
2011/10/29(土) 16:48:21.52読んでお前が反論しろ。
なんで、相手に読めといって終わるバカが多いのか。
0414デフォルトの名無しさん
2011/10/29(土) 16:53:42.740415デフォルトの名無しさん
2011/10/29(土) 16:54:40.62動的型言語に型注釈を追加しました。
ぶっちゃけコメントと大差ないですが、馬鹿には十分でしょ? < Googleの言い分
0416デフォルトの名無しさん
2011/10/29(土) 16:56:19.020417デフォルトの名無しさん
2011/10/29(土) 16:57:55.570418デフォルトの名無しさん
2011/10/29(土) 16:59:17.11Googleがそんな事するわけがないだろ。
常識で考えろやw
0419デフォルトの名無しさん
2011/10/29(土) 17:07:47.89土方はその常識の範疇を超えてるからな・・・
ここは土方のレベルすら読み切ったGoogleを褒めるべき。
0420デフォルトの名無しさん
2011/10/29(土) 17:31:21.72お前の言うゲスな考えをGoogleがしていることじゃないんだがw
0421デフォルトの名無しさん
2011/10/29(土) 17:37:47.49お前はよくわかってるからもう来なくていいよ。
0422デフォルトの名無しさん
2011/10/29(土) 17:50:17.84俺もそう思うわwwww
0423デフォルトの名無しさん
2011/10/29(土) 17:52:44.440424デフォルトの名無しさん
2011/10/29(土) 18:20:43.55>>425あたりが一番わかってそうだが、
0425デフォルトの名無しさん
2011/10/29(土) 18:25:58.09難しいのに動的言語にもそれなりに取り入れました。
本当に不要なものであれば、入れる必要はなかったものです。
もともとGoogleはJava使ってる会社ですしね。
0426デフォルトの名無しさん
2011/10/29(土) 18:40:37.770427デフォルトの名無しさん
2011/10/29(土) 20:08:57.51>>60に警告すら出さないのは静的型付けの観点から見て何のメリットがあるの?
実行時にすら型チェックしないのは何のメリットがあるの?
>>129の言うように型情報を用いた最適化も無理なことに何のメリットがあるの?
0428デフォルトの名無しさん
2011/10/29(土) 20:21:08.06> 実行時にすら型チェックしないのは何のメリットがあるの?
ないよ。これはJavaScriptに変換するための制限か
もしくは、まだベータ版だからだだろう。
0429デフォルトの名無しさん
2011/10/30(日) 06:25:47.82> ないよ。これはJavaScriptに変換するための制限か
コンパイラ(トランスレータ)が静的型検査するのにターゲット言語の制限なんて関係ねえだろカス
動的型検査だってJavaScriptで実装しようと思えばできる
でもググルは敢えて、検査しなかった
静的型付けのデメリットをよく知っていて、それが致命的なものと考えたからだ
> もしくは、まだベータ版だからだだろう。
ぷ
0430デフォルトの名無しさん
2011/10/30(日) 11:57:24.07ドカタがGoogleに上から目線でワロタwww
0431デフォルトの名無しさん
2011/10/30(日) 12:12:19.02笑w
えっと、解説するとそこは>>419に書いてある文章を
修正したものだから、本当に上から目線なのは>>419なんだよ
0432デフォルトの名無しさん
2011/10/30(日) 12:34:49.83上から目線なのは文型のせいだと思っちゃうほどドカタなの?
0433デフォルトの名無しさん
2011/10/30(日) 12:52:31.600434デフォルトの名無しさん
2011/10/30(日) 13:40:28.370435デフォルトの名無しさん
2011/10/31(月) 12:30:15.75実行時のチェックはjs変換ではしないよな
専用vmならやるかもだが
0436デフォルトの名無しさん
2011/10/31(月) 22:46:39.910437デフォルトの名無しさん
2011/11/01(火) 00:27:13.260438デフォルトの名無しさん
2011/11/01(火) 01:44:36.74にはまった時のことだったな。考え方を抽象化してそれをプログラミング
にしていくと、あまりにも手に負えなくなったので言語を切り替えた。
しばらく前にOcamlとC#の例が紹介された論文があったが、あれ状態で
もういらん。。。 となってしまったな。
0439デフォルトの名無しさん
2011/11/01(火) 04:13:06.780440デフォルトの名無しさん
2011/11/01(火) 09:05:06.900441デフォルトの名無しさん
2011/11/01(火) 10:22:23.690442デフォルトの名無しさん
2011/11/01(火) 10:43:47.430443デフォルトの名無しさん
2011/11/01(火) 12:44:31.33目的がその場限りの取り組みならそれでOKだが、柔軟性を求めた
作りを考えだすと、途端にシンタックスノイズがすごく邪魔になる。
そんな状況ならば、もっと抽象的な記述が得意な方をやればいい
のではないか?と考えたくらいかな。僕はLispの方に向かったけど
OcamlやHaskellでもよかったかなとは思うところはあるな。
抽象化の記述が弱ければ、とたんに建設資材を組み立てるだけみたいな
プログラミングになりがちで余り頭がいらないから、それならそんな人
に任せばいいだけかな。そうゆうことが好きな人も多いみたいだし。
0444デフォルトの名無しさん
2011/11/01(火) 12:52:28.89ふうに訂正しておく。
とかく、一歩二歩先を考えたプログラミングにC++とかJavaは向いて
ないんだよな。。。。
0445デフォルトの名無しさん
2011/11/01(火) 13:58:34.89メモリは余ってるし、処理速度は並列で稼げるし
積極的に使う理由がない
0446デフォルトの名無しさん
2011/11/01(火) 14:03:11.90メモリや実行効率は何の関係もない
0447デフォルトの名無しさん
2011/11/01(火) 14:25:59.52プリミティブ型があるからテンプレートが必要になった
プリミティブ型を残したのは速度やメモリが理由
0448デフォルトの名無しさん
2011/11/01(火) 15:23:31.92直実行出来ない以上どこかでプリミティブに行き着く
まC++がゴミというのに異存ないがね
0449デフォルトの名無しさん
2011/11/01(火) 16:17:45.73いい加減気づけよw
0450デフォルトの名無しさん
2011/11/01(火) 16:47:46.700451デフォルトの名無しさん
2011/11/01(火) 16:48:36.56過剰な思い入れをする人たちはそれらを物や組織を、その観念を超えて
一つの人格だと認識するようになる傾向にあるらしい
病的なレベルになると「俺がガンダムだ」と言うような
自分そのものだと自称する傾向にあるらしいな
つまり449は自分のことをc++だと思い込んでいるのだと俺は結論付ける
0452デフォルトの名無しさん
2011/11/01(火) 17:22:36.540453デフォルトの名無しさん
2011/11/01(火) 18:37:26.540454デフォルトの名無しさん
2011/11/01(火) 18:58:31.890455デフォルトの名無しさん
2011/11/01(火) 19:40:54.520456デフォルトの名無しさん
2011/11/01(火) 19:56:07.29Scalaは動的型言語並みに簡潔な上にパフォーマンスも良いので流行ると嬉しい
http://www.readwriteweb.com/hack/2011/06/cpp-go-java-scala-performance-benchmark.php
0457デフォルトの名無しさん
2011/11/01(火) 19:56:17.160458デフォルトの名無しさん
2011/11/01(火) 20:33:48.85html5が動くブラウザのシェアが各osのシェア以上になることは確定してるから
ほとんどのアプリケーションはウェブアプリになる
するとjavascriptが自動的に覇権を得る
それを見越したdartだろう
0459デフォルトの名無しさん
2011/11/01(火) 20:45:46.70「静的型」と書いて「ドカタ」と読むかんじだな
0460デフォルトの名無しさん
2011/11/01(火) 20:55:44.28動的型→ドウテキカタ→ドカタ
じゃないのか
0461デフォルトの名無しさん
2011/11/01(火) 21:02:26.20言語だから454のいう事も少し理解できる。無駄に人数が必要な言語ってコスト
の面でもあまりよくないけど、その無駄をふくらませて作らせるのが正しいの
かもね。俺には理解できんが。問題は少数精鋭形に向いてると言っても、その
精鋭を集めるのが大変というジレンマがあるくらいかな。
0462デフォルトの名無しさん
2011/11/01(火) 21:05:34.070463デフォルトの名無しさん
2011/11/01(火) 21:18:22.36相場の数倍とかになるだろうけどなw
で、そうやって高い金だして雇っても
費用対効果をうまく出すのは難しいんだよね。
なぜならプロジェクト全体を見ると難しい所と簡単な所がある。
難しい所ってのは、プロジェクトの基盤の部分だが、量としては少ない。
それに対して、簡単なところは、単純作業的な所は、量は多い。
簡単な所を高い金だして雇った人にさせても無駄が多い。
プロジェクト全体の効率を考えると、簡単なところは新人、下請け、
オフショアなどにやらせるという考えがでてくる。
そうなると、どうしてもコードをコントロールしやすい静的言語になっちゃうんだよね。
0464デフォルトの名無しさん
2011/11/01(火) 21:36:52.83という意見ももっともだな。どこに最適な所があるかはなんとも言えないけど
言ってることはわかるよ。1割の凄腕系と9割のアリで十分という考えは
成り立つかもね。
宇曽かマコトか解からんけど、
ただ、モチベーションが保てない開発言語から別のに移して飛躍的に生産性が
伸びたという報告もあるからなぁ。ScalaとかClojureはそのへんの最右翼なん
だけど、その違いって触った人しかわからないのと、保守的すぎる風土が多い
日本というのが一番問題かもね。
0465デフォルトの名無しさん
2011/11/01(火) 21:47:09.39Java、PHP
0466デフォルトの名無しさん
2011/11/01(火) 22:00:24.37> ただ、モチベーションが保てない開発言語から別のに移して飛躍的に生産性が
> 伸びたという報告もあるからなぁ。ScalaとかClojureはそのへんの最右翼なん
たぶん、それは、何かのライブラリやフレームワークといった
「パソコンの仕組みを知らない人」が使わない物の開発じゃないかな?
パソコンの仕組みを知らない人が使うシステムだと、
そんなのYAML形式の設定ファイルをいじるだけじゃん、SQL実行するだけじゃんていう箇所の
インターフェースを作るなどというつまらない作業がたくさん出てくるはず。
どんな言語を使っても、基盤ができたあとは
つまらない開発ばっかりになるはずなんだ。
基盤を作るっていうのは、その他の部分でバグが入り込まないようとか
少ないコードで書けるようにして、残りは特に解決すべき課題もない
単純作業にまで落としこむのが目的だからね。
0467デフォルトの名無しさん
2011/11/01(火) 23:12:31.56対話環境が大きな影響を与えたそうな。
0468デフォルトの名無しさん
2011/11/01(火) 23:29:30.48コードの多寡にかかわらず。
でも精鋭は数が少なくてバラけてるし
集めるが大変
でも10倍も払わなくていい
0469デフォルトの名無しさん
2011/11/02(水) 15:12:32.44本当の理由→たくさん雇ったら金がかかるから、バカを天才扱いしてサビ残させて節約すっか
バカ達の会話→俺たち天才だしな、凡人とは違うのだよ凡人とは
ああ、もちろんこのスレの人たちはみんな天才だと思いますけど
たまにいるんですよね勘違いする人が、九割ぐらいの人は勘違いする
でもこのスレの人たちのほとんどは一割の天才だから気にしないでください
0470デフォルトの名無しさん
2011/11/02(水) 15:26:25.98,,-―--、 .)ノ
|:::::::::::::;;;ノ
|::::::::::( 」
ノノノ ヽ_l
,,-┴―┴- 、 ∩_
/,|┌-[]─┐| \ ( ノ
/ ヽ| | バ | '、/\ / /
/ `./| | カ | |\ /
\ ヽ| lゝ | | \__/
.\|  ̄ ̄ ̄ |
0471デフォルトの名無しさん
2011/11/02(水) 15:41:09.23少数精鋭がすごいなんて根拠もデータもないし
歴史上は数の多い勢力が大抵の場合は勝ってる
金がないから少数を育てて少数精鋭にするしかないというのが事実
少数精鋭が常に勝つのであればマイクロソフトもグーグルもアップルも
なんであんなに大きいのだろうな
少数精鋭の方が効率がいいのに
俺は頭が悪いからわからないよ
少数精鋭よりも多人数の方がつおいんじゃないの
0472デフォルトの名無しさん
2011/11/02(水) 15:43:15.820473デフォルトの名無しさん
2011/11/02(水) 15:47:34.330474デフォルトの名無しさん
2011/11/02(水) 15:50:47.62だから一部で恐れられた。まともとのハンティングもしようとしてたけど、
Pythonの本拠だからな。グーグルって。
最近はアイデアが枯渇してるように見える。
少数系の話がよく上げる例だったら、グレアムのviawebの件を調べてみれ
ばいい。少数精鋭でやった機動力の高さが効いてる例だった。
日本で、rubyハッカー系ばかり集めてる所ってどこなんだろう。
0475デフォルトの名無しさん
2011/11/02(水) 15:53:28.11多頭に船状態になるから、期待できない。
サッカーのビッグクラブで監督が選手をまとめきれない状態に近い。
0476デフォルトの名無しさん
2011/11/02(水) 15:56:50.61金がなくて人をたくさん雇えないから権威にすがったり
少数精鋭だと虚勢を張ってるだけじゃないの
そして現状に妥協した結果
人が多くなると管理が難しくなるのは当然
少数精鋭でいいという考えはその難しさから逃げてるだけ
資産を増やして数を増やして管理を考えるのが正道
その道を通ったから大企業になるだろ
大企業になればあらゆる主導権を握るから
弱小企業は常に大企業に振り回される
俺は自分で規模の大きいプログラムを効率よく作る方法を模索してるけど
お前は違うよな
周りがそういってるから
権威が言った、有名な著書にそう書いてあるから
人月の神話を銀の弾丸のように使い出したら、それはギャグでしかないだろ
無数ある戦略を一つに絞って複数の目的に対応しようというのは
組織運営に反している、愚考だろ
0477デフォルトの名無しさん
2011/11/02(水) 16:09:09.310478デフォルトの名無しさん
2011/11/02(水) 16:19:22.640479デフォルトの名無しさん
2011/11/02(水) 16:39:49.39おまえはそれを素直に受け入れることができるのだろうか
自分の未来を削る覚悟がないのなら他人を批判なんてしないほうがいいよ
お前の否定した技術が必須になったときに受け入れられずに出遅れる
お前の否定した連中と同じ立場になったら発狂するしかないだろ
俺は少数精鋭は選択肢の一つに過ぎず銀の弾丸ではないと主張しただけ
過去のいろいろなジャンルの本を読んで理解した重要な部分を
各所にちりばめてそれをやってるから
俺の発言をすべて批判したら、お前の選択肢が大幅になくなる
そのための長文だ
俺は技術的に減るものはないけど、おれの発言や人格を批判した奴は
様々な選択肢に制約がかかるだろうな
だから存分に俺をバカにしなさい、俺にデメリットはない
部分的な批判されると困るけど、ここまで言われてそれをすると
その無駄に高いプライドに傷がつくよね
0480デフォルトの名無しさん
2011/11/02(水) 16:45:24.89> 俺は少数精鋭は選択肢の一つに過ぎず銀の弾丸ではないと主張しただけ
いや、大人数のほうがいいと言った。
0481デフォルトの名無しさん
2011/11/02(水) 16:47:00.510482デフォルトの名無しさん
2011/11/02(水) 17:04:41.75普段から空気読めよと主張している奴が風評ひょーうと言って押し付けてる
明らかに異常な状態の中でクールな俺ら最強じゃねというアホども
何騒いでんだよみっともない、たかが原発が爆発しただけじゃねーか
自分の命を削ってまで周りに合わせようという努力
汚染された空気を読めないくせに俺みたいに空気読めよと押し付ける
ついでに汚染された食い物も押し付ける
これを見てると自分で考えない人たちがいかに危険かがわかる
だから全部疑うことにした
メリットデメリットがはっきりわからないものは全て疑うことにした
そうしなければただちに死ぬ
お前の押し付けているその考えは汚染されている可能性があります
0483デフォルトの名無しさん
2011/11/02(水) 17:21:48.450484デフォルトの名無しさん
2011/11/02(水) 17:30:27.860485デフォルトの名無しさん
2011/11/02(水) 17:43:09.33お前の押し付けているその考えは汚染されている可能性があります
0486デフォルトの名無しさん
2011/11/02(水) 17:45:58.76いまさら反原発なんてできるわけがない
原発は絶対安全だって東大の偉い人たちだって言ってるし
大丈夫だよ、空気読めよ
逆らったらお前も頭 が お か し いことにしてやるからな
0487デフォルトの名無しさん
2011/11/02(水) 17:53:47.32少数派の意見をバカにして軽視するハッカーの皆さんへ
もう一度読み返してみてはいかがでしょうか
結局、チキンだから多数派にいなければ落ち着かないんだろ
空気を尊重し多数派に媚びるチキンハッカー
今からハッキングですかお疲れ様です、チキンは照り焼きでお願いします
0488デフォルトの名無しさん
2011/11/02(水) 18:02:11.00テリヤキ二つな。
0489デフォルトの名無しさん
2011/11/02(水) 18:07:16.120490デフォルトの名無しさん
2011/11/02(水) 18:44:45.17「サービスインに間に合わない?増員だ! 」
というドカタ現場の常識に染まって
自分こそ空気に流されていることにすら気付かない奴が言うと
説 得 力 が 違 う な !
0491デフォルトの名無しさん
2011/11/02(水) 18:51:27.100492デフォルトの名無しさん
2011/11/02(水) 18:52:40.08ドカタの中の出来る奴なんて
やっとこ普通レベルだしな
0493デフォルトの名無しさん
2011/11/02(水) 20:26:01.99皆で仲良く同じ言語使う必要無いんだけどなー
今時、大規模なシステムを1個の複雑なソフトとして作ることの方が稀だし
つーか、プロジェクトの難しい部分って、ぼんくらの頭数だけ揃えて時間かけても解けないんだよね
効率とか以前の問題で、可能か不可能かのレベルで違う
だから兵隊だけ集めてもプロジェクトは廻らん
0494デフォルトの名無しさん
2011/11/02(水) 20:29:12.68簡単なところは動的型付け言語でサクッとやっちゃってるんだけど
このスレでは逆の方が良いって論調?
0495デフォルトの名無しさん
2011/11/02(水) 21:25:58.27バグを出さないと言っている天才さんはおいておいて、
型の間違いを検出してくれる方がいいでしょ。
それなりの頭があれば理解できる事だと思うんだけど。
プログラマのくせに楽をするのが悪だと思ってるのかねえ…。
0496デフォルトの名無しさん
2011/11/02(水) 21:47:23.22皆楽したいからJavaみたいな冗長かつぬるぽな言語を避けようとしてるんじゃん
0497デフォルトの名無しさん
2011/11/02(水) 22:04:59.08具体的に言うとモナド則を保証するモナドしか受け付けない型とか書ける
0498デフォルトの名無しさん
2011/11/02(水) 22:09:46.93仕事で使ったこと無いけど
0499デフォルトの名無しさん
2011/11/02(水) 22:15:21.12それが下手糞なやつは、全滅するまで意地を張るから困る
0500デフォルトの名無しさん
2011/11/02(水) 22:20:47.430501デフォルトの名無しさん
2011/11/02(水) 22:23:19.730502デフォルトの名無しさん
2011/11/02(水) 22:36:11.12でも、学習時間が比較的長くかかるような気がする。モナドまで理解しようと
しなくてもプログラミングはできる。でも、この言語実際に仕事で
使った人がブログで書いてたのはやっぱり少人数向けなんだなと思った。
haskeller位になるとそれなりにプライドもあるだろうから、俺が俺がになるん
かもしれん。金融系のほうでは関数型つかってるところがチラホラあるらしいね。
外資だったと思うが。
0503デフォルトの名無しさん
2011/11/03(木) 06:12:42.980504デフォルトの名無しさん
2011/11/03(木) 13:33:05.29ヒッキーのための言語。だから、リッチーヒッキー(Clojureの作者)が教祖になる。
0505デフォルトの名無しさん
2011/11/03(木) 13:50:45.85天才はやるまえから何もかもがわかるから
失敗する確立の高さを最初から知ってて成功確率が低い事案は積極的に行わない
だから関数型で偉大な成果が残ることはほとんどない
諦めの悪い凡人が使いそうな言語が一番成果が残る
だから凡人に理解できる言語がいいんだ
天才よりもオタクの方がいいんだ
0506デフォルトの名無しさん
2011/11/03(木) 14:12:19.62態度だけでかくて、まともなプログラム作れない
0507デフォルトの名無しさん
2011/11/03(木) 14:38:18.860508デフォルトの名無しさん
2011/11/03(木) 14:43:42.40人数とサービス残業で埋め合わせる。
0509デフォルトの名無しさん
2011/11/03(木) 14:57:49.96いい加減ドカ太郎はなに言語使っているか言えよ。
>>507-508
お前のことだぞ。
0510デフォルトの名無しさん
2011/11/03(木) 14:59:11.18それってドカタの周りにはドカタ仕事しか集まらないだけだよね
0511デフォルトの名無しさん
2011/11/03(木) 15:01:52.87fizzbuzzの壁、再帰の壁、高階関数の壁。。。 段階を追っていろいろある
高階関数については、最初にJavaとかCをやると面食らうのは当然だと思う。
最初から関数型をやる他人より敷居が高くなる原因の一つ。
高度な抽象化ができるような技量があれば、土方とは言われる状況に
ならんわな
0512デフォルトの名無しさん
2011/11/03(木) 15:03:42.020513デフォルトの名無しさん
2011/11/03(木) 15:32:32.28ぬるぽで苦しめられるとか皮肉だな
0514デフォルトの名無しさん
2011/11/03(木) 16:10:47.05でもこの板に来るような人って、最低限そのくらいの壁を超えてそうに思うけど
甘いかな?
0515デフォルトの名無しさん
2011/11/03(木) 16:32:34.74参照にはないポインタ特有の発想の壁もあるけど
あれの最大の壁は表記の壁だと思う…例えば
ポインタ宣言時、型のほうではなく変数名のほうに付ける要素であるということ、
それでいて代入時はそれが要らないこと、
配列と混じった場合の優先順位の解りにくさ、関数ポインタのカオス書式
この辺りは表記がもうちょい考慮されてたら脱落者が相当減ると思うのだが…
0516デフォルトの名無しさん
2011/11/03(木) 17:03:37.21型にポインタつけるのはC的には無しだろうな
変に参照やらクロージャやらなんやら取り込んだC++はアレだがね
Java位でいんじゃね
0517デフォルトの名無しさん
2011/11/04(金) 05:08:59.49自画自賛も結構だが、高階関数や遅延評価ぐらいで唯我独尊するのって恥ずかしいよね。
0518デフォルトの名無しさん
2011/11/04(金) 05:20:12.850519デフォルトの名無しさん
2011/11/04(金) 05:57:41.31本気で思い込んでるのか?
0520デフォルトの名無しさん
2011/11/04(金) 06:45:59.87関数型言語ではまともにプログラミングできないだろうな、とは思う
0521デフォルトの名無しさん
2011/11/04(金) 07:54:28.65let sum x y = x + y
と書いたら sum の型は当然 int->(int->int) になる。それが高階関数ですよね
高階関数が無ければ
let incr = sum 1
という定義ができません。これはあまりに非効率で話になりません
0522デフォルトの名無しさん
2011/11/04(金) 07:56:41.03sum は + が定義される任意の型 'a に対して 'a->('a->'a) となるべきでした
0523デフォルトの名無しさん
2011/11/04(金) 08:42:14.38もちろんカリー化があるほうが便利
0524デフォルトの名無しさん
2011/11/04(金) 09:40:01.44高階関数ってのは、関数を引数に渡せたり、関数を戻り値にすることができる、関数のことだよね?
関数をカリー化するのは、高階関数を上手く利用した手法だと思うけど、
それを高階関数だって言うのは違うんじゃないの?
0525デフォルトの名無しさん
2011/11/04(金) 10:37:37.08正確に言えば、関数の部分適用な。
0526デフォルトの名無しさん
2011/11/04(金) 10:40:21.51いや、カリー化の方が正確だろう。
0527デフォルトの名無しさん
2011/11/04(金) 10:41:40.230528デフォルトの名無しさん
2011/11/04(金) 10:42:14.280529デフォルトの名無しさん
2011/11/04(金) 10:46:06.71(int, int) -> intをint->int->intにするのはカリー化
(int, int) -> intからint->intにするのは部分適用
int->int->intから int->intにするのは関数適用
0530デフォルトの名無しさん
2011/11/04(金) 10:49:10.30だから>>521はこう書いてるんだから、これは部分適用ではなくカリー化だろう。
>と書いたら sum の型は当然 int->(int->int) になる。
0531デフォルトの名無しさん
2011/11/04(金) 10:49:46.310532デフォルトの名無しさん
2011/11/04(金) 10:51:24.93Haskell, SML, GCamlでは決まらない
0533デフォルトの名無しさん
2011/11/04(金) 10:53:15.88http://d.hatena.ne.jp/kazu-yamamoto/20110906/1315279311
0534デフォルトの名無しさん
2011/11/04(金) 10:53:34.950535デフォルトの名無しさん
2011/11/04(金) 10:55:28.540536デフォルトの名無しさん
2011/11/04(金) 10:57:31.55部分適用をこの形式で記述できるなら sum はカリー化されていると言える。
0537デフォルトの名無しさん
2011/11/04(金) 10:57:57.22違うよ、っていうか過去にそんなバージョンあったか?
0538デフォルトの名無しさん
2011/11/04(金) 10:59:11.95sum は 「intを引数にとって、int->int を返す一引数関数」なんだから
部分適用じゃないよ
0539デフォルトの名無しさん
2011/11/04(金) 11:02:02.58すまんwネタです。
OCaml のランタイムシステム。GC がポインタと即値を区別できるように
int は左 1 ビットシフトして最下位ビットに 1 を立ててなかったっけ。
0540デフォルトの名無しさん
2011/11/04(金) 11:06:50.060541デフォルトの名無しさん
2011/11/04(金) 11:15:57.62sum がカリー化されていない以上、こうは書けない。
部分適用をサポートする言語では let incr = partial(sum, 1) のように書く。
一方、sum がカリー化されているなら let incr = sum 1 はごく普通の関数適用であり、部分適用ではない。
0542デフォルトの名無しさん
2011/11/04(金) 11:34:21.13関数型言語は大規模開発で効率が悪い
0543デフォルトの名無しさん
2011/11/04(金) 11:39:50.46http://www.ibm.com/developerworks/jp/views/java/libraryview.jsp?&search_by=%E9%96%A2%E6%95%B0%E5%9E%8B%E3%81%AE%E8%80%83%E3%81%88%E6%96%B9
0544デフォルトの名無しさん
2011/11/04(金) 12:09:41.45一部LL系のアーリーアダプタが注目して遊んでいるという程度で、
(パイロットプロジェクトを除く)案件で使われる(=業務経歴書上のアピールポイントになる)には、まだ数年かかると思われ。
0545デフォルトの名無しさん
2011/11/04(金) 12:26:28.78随分明るい未来だな
0546デフォルトの名無しさん
2011/11/04(金) 12:33:16.72これまでの数年とこれからの数年はスピードが全く違うことが予想される
0547デフォルトの名無しさん
2011/11/04(金) 12:34:48.99ドカタと精鋭の二極化が進むんですね
0548デフォルトの名無しさん
2011/11/04(金) 12:37:58.63職業プログラマなら「食っていけるドカタ」を目指す割り切りが必要
0549デフォルトの名無しさん
2011/11/04(金) 12:53:34.0116進のブートシークエンスを手打ちしていた「本物のプログラマ」や
昔ベーマガ読んでたオッサンは、確かに「そう簡単には変われない」
変わるのは世代
子供の頃からインターネットが存在するのが当然で
ファーストクラスの関数が当たり前に利用できる言語で育った若い世代が
年寄りを駆逐していくだけ
0550デフォルトの名無しさん
2011/11/04(金) 13:05:49.84lispの古さわかってんの? ファーストクラスの関数が〜 と言ってるが。
視野狭くない?
0551デフォルトの名無しさん
2011/11/04(金) 13:07:33.910552デフォルトの名無しさん
2011/11/04(金) 13:09:12.28で凝り固まった概念に浸った人。かれらは初心者より違うものを受け付けない傾向
にある。でも、そういった人は淘汰されるから。
速さが違うと言っても日本の中の多くは保守的な国でなかなか悪習を変えないから
その悪癖がどこまで悪影響としてでるかだよね。
0553デフォルトの名無しさん
2011/11/04(金) 13:11:52.21プログラミングも変化せざる負えないよね。実際多CPUにうまく対応
する言語もいくつも出てきてるしね。利用する何か?によってかわるだろうが
0554デフォルトの名無しさん
2011/11/04(金) 13:26:29.51Lispは勿論古いけれども、Lispが使えるのは「当たり前」ではなかったよ
職業プログラマは、call by nameや関数のネストのような機能をALGOLから
意図的に削除したCベースの言語に長年馴染んで来たんだから
一方、今やLispや関数型言語から来た要素はJavaScriptのように
普通に使われている言語に「当たり前」にある要素だし
インターネット以降の世代では、知識ベースの共有がそれこそ桁違いだ
0555デフォルトの名無しさん
2011/11/04(金) 13:43:33.99まともなプログラム作れない屑ばかり
0556デフォルトの名無しさん
2011/11/04(金) 13:45:25.00同等かそれ以上に英語が壁のような気がするな
fizzbuzz書けないのもダメだが、英語できないやつは自動的に精鋭にはなれない
0557デフォルトの名無しさん
2011/11/04(金) 13:45:40.990558デフォルトの名無しさん
2011/11/04(金) 13:54:29.35ま、皆が関数型言語を使うようになったら自分もそれに合わせるよ。
開発言語なんて何でもいいよ。俺が合わせるから、主義主張のある人たちで議論してください。
決まったら言って。
つー感じ。どーでもいい
0559デフォルトの名無しさん
2011/11/04(金) 14:09:10.6710年ぐらい前に業務命令でちょっとCOBOLerに親会社の誰か知らん奴が書いた
C++のコードについて説明した(教えた)ことがあるけど、要するに無理なんだよ
テンプレートを多用したコードでな、COBOLerどころかCは知ってる奴にだって
無理なコードだった
逆に言うと、今からJCLとCOBOLとPL/Iでやれとか言われても困るだろ
0560デフォルトの名無しさん
2011/11/04(金) 14:13:03.860561デフォルトの名無しさん
2011/11/04(金) 14:47:01.36That's right. Unfortunately, we should understand a large amount of
information about programing languages, their libraries and others
in English. In the case of punishing a project, we'd better write its
document in English. However, most of these projects have a little of
documents in English. The worst case in them is that the author wrote
a message, read the source - this has no document both in English and
Japanese.
It is a problem for Japanese that learning English is by far more
difficult than learning programing languages.
0562デフォルトの名無しさん
2011/11/04(金) 15:10:56.75エジソンは親が教育を放棄してたらただの変人
ヘレンケラーは親が金持ちじゃなかったら殺されてただろう
お前の能力はお前の努力で得たものではなく九割以上は環境に恵まれてから
ほぼ同じ環境にある奴同士で努力を競うならいいだろうが
まったく環境が異なる奴相手に努力しろと言ってる奴は見下してるだけ
お前が歴史に残るような偉業を成し遂げていないのなら
お前は凡人だよ、リソースを食い荒らして不幸を撒き散らしただけのただの愚か者
自分を有能だと思うのなら他人の利益になることをやれよ
俺みたいに世を呪わなければ正気を保てないような奴を見下して遊んでるんじゃない
このクソ虫ども、死ねよ
0563デフォルトの名無しさん
2011/11/04(金) 15:11:27.48それと同じ主張は何か開発関係の本でも書いてたな
プロジェクトを成功させたかったら、皆の慣れ親しんだ言語を使え。みたいな
0564デフォルトの名無しさん
2011/11/04(金) 15:53:39.11it is not necessary to ensure all guys are familiar with the same programming language,
but a project of a team that has no experienced people for the language could be risky.
0565デフォルトの名無しさん
2011/11/04(金) 16:05:09.50http://local.joelonsoftware.com/wiki/%E5%90%9B%E3%81%AE%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E%E3%81%A7%E3%80%81%E3%81%93%E3%82%8C%E3%80%81%E3%81%A7%E3%81%8D%E3%82%8B%3F
http://d.hatena.ne.jp/kazu-yamamoto/20080722/1216734420/
0566デフォルトの名無しさん
2011/11/04(金) 16:13:01.56× It is a problem for Japanese that learning English is by far more
○ It is a problem for the Japanese that learning English is by far more
0567デフォルトの名無しさん
2011/11/04(金) 16:15:00.64つまり関数型言語はオブジェクト指向的モデルを表現できない、
その程度の劣った言語ということだね。
0568デフォルトの名無しさん
2011/11/04(金) 16:28:31.490569デフォルトの名無しさん
2011/11/04(金) 16:58:13.32キミ、読解力が絶望的に低いねw
0570デフォルトの名無しさん
2011/11/04(金) 17:02:32.130571デフォルトの名無しさん
2011/11/04(金) 17:04:37.05ジャバラに比べると如何せん繁殖率が悪い。
0572デフォルトの名無しさん
2011/11/04(金) 17:09:29.07Javaが他の言語と比べてぶっちぎりで劣ってるって話だから
0573デフォルトの名無しさん
2011/11/04(金) 17:13:33.36名詞とか動詞とか、いつの時代のOOA/OODよ
0574デフォルトの名無しさん
2011/11/04(金) 17:19:05.04居場所はリアルにいくらでもあるくせに
落伍者の集まる場所にまで押し寄せてきやがる
俺バカだからバカ言語の方が居心地がいいや
0575デフォルトの名無しさん
2011/11/04(金) 17:35:06.72ただ今時のLLは大抵レキシカルクロージャをサポートしていて
map, filter, reduceぐらいのことは標準でできる
C#でもできるしC++も11でようやくlambdaが入った
要は既にその程度は標準でありふれているものであって
C#やC++を見ればそれが圧倒的に世界の趨勢なのだと分かる
よって、そうした環境で育った子がJavaでの開発にはフラストレーションを感じる
可能性は高いだろう
0576デフォルトの名無しさん
2011/11/04(金) 17:42:58.90静的型と実行時型情報が共存していたら混乱するのが普通だろう
0577デフォルトの名無しさん
2011/11/04(金) 17:45:28.99Javaの仕事はすぐにはなくならないだろうから、それをやっていればいい
若い人に無理やりCOBOLのやりかたを押し付けることだけはするな
0578デフォルトの名無しさん
2011/11/04(金) 18:43:59.68excelのチーフマネージャーだろ?Haskellとは関係ない人ちゃう?
0579デフォルトの名無しさん
2011/11/04(金) 18:53:24.46いいよ。年寄りが頭が硬いと思われてるは新しいことにトライする気力が
生まれないから。新しいものにトライするのがダリーっていうタイプは、
年齢にかかわらず終わってるのは事実かも。
0580デフォルトの名無しさん
2011/11/04(金) 18:55:06.632,3年に一つは丁度いいと思う
0581デフォルトの名無しさん
2011/11/04(金) 19:00:28.30じゃあHaskellもだめだな
0582デフォルトの名無しさん
2011/11/04(金) 19:01:46.18ハスケラはハスケル最高で思考停止だけどな
0583デフォルトの名無しさん
2011/11/04(金) 19:09:39.190584デフォルトの名無しさん
2011/11/04(金) 19:12:20.610585デフォルトの名無しさん
2011/11/04(金) 19:18:30.85一つの会社に永久就職して起業は考えないのであった
それが日本式
日本で起業するのは社会からあぶれた連中か
最初から起業する気でいた連中だけ
他人に自分のやってきた努力は要求するくせに
他人から言われた努力はやろうともしない
その程度のチャレンジャー、その程度の向上心
頭を硬くしないために見下せる他人を探して説教する
それが日本式エリート
かっこ良すぎですわ
こっちは疲弊して余力もないっての
0586デフォルトの名無しさん
2011/11/04(金) 19:20:01.78ネタで煽ってるだけにしか見えない。
0587デフォルトの名無しさん
2011/11/04(金) 19:20:48.43Javaはプログラマをアホと仮定して便利な機能も入れないので不便。
0588デフォルトの名無しさん
2011/11/04(金) 19:28:22.79ドカタの方を尊敬してるよ
原発爆発したエリート東大卒は責任転嫁して逃げ回って給料だけは現状維持
現場のドカタは薄給で命を削って作業して
偉い東大の先生たちはプルトニウムは重くて飛ばないと言う
ドカタの方が尊敬に値する、むしろドカタを尊敬すべき
特攻隊も下っ端だろ、それを立案したエリートは敵前逃亡
やっぱり下で作業する頭の固いやつらの方が
人として尊敬できるよ
保身のための努力よりも、社会のための献身の方が偉いよ
新しい言語覚えたりするのって保身のための努力だろ
それを他人に強要し始めてる時点で人としてのレベルがね
こっちはお前らの構築してきたシステムに振り回されて死にそうだってのに
お前たちはずいぶんと余裕だね
0589デフォルトの名無しさん
2011/11/04(金) 19:42:35.94C++が無理程度のやつは
どっちにしろ大したもんは作れない
0590デフォルトの名無しさん
2011/11/04(金) 19:49:41.34必要最小限の部分だけの努力なんだ
生活するための努力、立場を得るための努力
環境を得るための努力、それら様々な努力をしなくても
生まれつき持っている
お前は勉強する努力だけでいいんだからな
それだけやって楽に高学歴を得て、時間が余ったから言語オタやって気楽でいいよな
一度何もかも捨ててやらなくてもよかった努力をすべてやった上で
言語オタやれるんだったら
それで認めてやるよ
0591デフォルトの名無しさん
2011/11/04(金) 19:50:19.06なんつってなwwwwwwwwwwwwwwwwwwwwww
0592デフォルトの名無しさん
2011/11/04(金) 20:09:19.44C++は書くのは簡単だが他人のコードを読むのは辛い
Perlみたいなもん
0593デフォルトの名無しさん
2011/11/04(金) 20:13:44.88アセンブリは言語じゃねーよ
ただの命令の羅列だろうが
0594デフォルトの名無しさん
2011/11/04(金) 20:26:09.24プログラミング言語ではないが
言語ではあると思うよ流石に
0595デフォルトの名無しさん
2011/11/04(金) 20:44:40.310596デフォルトの名無しさん
2011/11/04(金) 20:45:27.650597デフォルトの名無しさん
2011/11/04(金) 22:01:42.83まあ高階関数やクロージャの有無に比べれば静的/動的なんて些細な違いだからな
0598デフォルトの名無しさん
2011/11/04(金) 23:01:26.030599デフォルトの名無しさん
2011/11/04(金) 23:59:05.070600デフォルトの名無しさん
2011/11/05(土) 05:41:59.530601デフォルトの名無しさん
2011/11/05(土) 07:57:09.79動的型つけ言語で効率がいいのは手のひらサイズまで
0602デフォルトの名無しさん
2011/11/05(土) 08:17:28.790603デフォルトの名無しさん
2011/11/05(土) 08:31:10.27たしかにコンパクトになる。>>601 無駄に膨れてるから錯覚を起こすのでは?
0604デフォルトの名無しさん
2011/11/05(土) 09:03:03.73静的と動的が入り乱れる言語を選ぶと、一挙手一投足が致命傷となりうる恐怖の連続
0605デフォルトの名無しさん
2011/11/05(土) 09:56:41.96クロージャなんて重要じゃないと言い続けるよ
だってJavaドカタだから
0606デフォルトの名無しさん
2011/11/05(土) 11:55:20.35脳内移植御苦労さん
0607デフォルトの名無しさん
2011/11/05(土) 11:58:40.13短く書けると噂のScalaでも、
Clojureと比べるとこんだけ差が出るんだな
0608デフォルトの名無しさん
2011/11/05(土) 12:02:36.23OCaml最強伝説の幕開けか
あれは完全に静的だからな
0609デフォルトの名無しさん
2011/11/05(土) 12:23:14.30たったの1000行とかw
スレタイ読めないのかよ
0610デフォルトの名無しさん
2011/11/05(土) 12:25:15.11読んだらプログラム書いた奴が未熟なだけって結論出てるじゃねえかよ
アホか
0611デフォルトの名無しさん
2011/11/05(土) 12:26:44.291000行が100万行になったら比率が変わるのか?
どんな理屈で?
0612デフォルトの名無しさん
2011/11/05(土) 12:30:16.880613デフォルトの名無しさん
2011/11/05(土) 12:32:04.28大規模になったら「理由も無く」差が無くなると思っちゃったんだね
0614デフォルトの名無しさん
2011/11/05(土) 12:35:09.68おまえだろw
0615デフォルトの名無しさん
2011/11/05(土) 12:35:58.29動的型言語の方がそりゃコンパクトに書けるだろうよ。
0616デフォルトの名無しさん
2011/11/05(土) 12:40:33.73腕切り落として体重が減ったって喜ぶようなもん
0617デフォルトの名無しさん
2011/11/05(土) 12:43:27.35異様にコードを圧縮する事も可能だが、保守は絶望的・・・
0618デフォルトの名無しさん
2011/11/05(土) 12:52:02.37短くかけるんだからすぐできるだろw
0619デフォルトの名無しさん
2011/11/05(土) 13:00:51.31逃亡しちゃったの?
0620デフォルトの名無しさん
2011/11/05(土) 13:05:47.62そういう意味では差が縮まると言っていいかも
0621デフォルトの名無しさん
2011/11/05(土) 13:06:07.640622デフォルトの名無しさん
2011/11/05(土) 13:19:20.61動的型付けの場合は殆どじゃなくて全ての人間でしょ
0623デフォルトの名無しさん
2011/11/05(土) 13:47:41.05まさか一つの言語しか使えないワケでもあるまいし
でもjavaにクロージャはいらんよな
0624デフォルトの名無しさん
2011/11/05(土) 13:52:04.800625デフォルトの名無しさん
2011/11/05(土) 13:56:23.65Javaをはじめとする汎用プログラミング言語の目的だったはず
0626デフォルトの名無しさん
2011/11/05(土) 13:57:13.130627デフォルトの名無しさん
2011/11/05(土) 14:01:07.630628デフォルトの名無しさん
2011/11/05(土) 14:45:25.21家建てられれば工具なんか何でもいい
0629デフォルトの名無しさん
2011/11/05(土) 14:48:52.860630デフォルトの名無しさん
2011/11/05(土) 14:50:14.91マジレスすると選ぶ言語によって開発者の単価から違うだろ
学者はそういう事何も考えねーから困る
0631デフォルトの名無しさん
2011/11/05(土) 14:50:17.40複数の言語くらい当たり前に使いこなせっての
Windows + Java + Eclipse で育った純粋培養のドカタは
まじでJavaしか出来ないから笑えるわ
0632デフォルトの名無しさん
2011/11/05(土) 14:52:25.90その組み合わせはもう古いだろ
今の純粋培養はPHP+C#だ
0633デフォルトの名無しさん
2011/11/05(土) 14:57:14.09強く生きてほしい
0634デフォルトの名無しさん
2011/11/05(土) 14:59:13.52C の読み書きに不自由しない
何か一つのアセンブリを読める
JavaでもC#でも、手続き型オブジェクト指向言語を何か一つ使いこなせる
スクリプト言語を何か一つ使いこなせる
このくらいの素養がない奴はドカタですらない。ただのガキ
0635デフォルトの名無しさん
2011/11/05(土) 15:05:59.880636デフォルトの名無しさん
2011/11/05(土) 15:07:34.250637デフォルトの名無しさん
2011/11/05(土) 15:10:23.16読んどけ http://blog.racket-lang.org/2010/12/racket-version-5.html
0638デフォルトの名無しさん
2011/11/05(土) 15:11:48.69そうでもないよ。マクロの使うセンスによるから。
0639デフォルトの名無しさん
2011/11/05(土) 15:16:52.080640デフォルトの名無しさん
2011/11/05(土) 15:20:43.96つまらん。
0641デフォルトの名無しさん
2011/11/05(土) 15:28:32.580642デフォルトの名無しさん
2011/11/05(土) 15:29:41.071000行ってのはたった 1Kstep なんだが....
せめて 10000行(10Kstep) と言って欲しかった
このくらいになるとモジュール化されたコード設計が必要になる
それ以下だとプログラム全体の構造を頭の中で把握できるから、
どんな言語でもコーディング技法(テクニック)で乗り切れてしまう
0643デフォルトの名無しさん
2011/11/05(土) 15:34:09.49もちろん言語によると思うけど、Cなら100万行超えたら大規模って言って大丈夫?
10万行オーダーは人によって意見がわかれそう。1万行は確実に小規模だよね?
0644デフォルトの名無しさん
2011/11/05(土) 15:37:49.69glueコードとか静的言語だけで開発していれば必要ないコード
本来必要ないコードの量が減ったとかいばられても困るわ
0645デフォルトの名無しさん
2011/11/05(土) 15:39:36.03なんとかなるものだよ
たとえばRubyでは
target = source_array.select {.....}.sort_by {.....}.map {.....}.inject(...) {.....}
みたいなコードを書く (実際にはコードを折り曲げるから、1文が数十行になる)
このコードの " {.....} " の部分がブロック(クロージャ)だから、
これは構文糖に包まれた高階関数であると言えるんじゃないかな?
もちろんブロック内で副作用のあるコードは書かない!という規律(モラル)が前提だけどね
0646デフォルトの名無しさん
2011/11/05(土) 15:42:12.38るかどうかだよ。
0647デフォルトの名無しさん
2011/11/05(土) 15:43:13.55かきおわったら萎える
0648デフォルトの名無しさん
2011/11/05(土) 15:46:42.810649デフォルトの名無しさん
2011/11/05(土) 15:47:13.64このスレならそれでいいのではないだろうか?所詮俺が正しいことを
押し付けるスレです。
0650デフォルトの名無しさん
2011/11/05(土) 15:53:02.46大雑把にあの辺にあれがあるという程度になってるから
力押しでやるのは不可能だろ
だから可読性とテストを優先してる
このレベルからインターフェースやアブストラクトがものすごく便利になってくる
コードを短くするよりもわかりやすい名前の方が重要
0652デフォルトの名無しさん
2011/11/05(土) 15:56:59.79カリー化が無ければ問題ないんじゃね?
>>650
俺ヘタレだからタグジャンプ無しでは他人のコードは読めんわ
0653デフォルトの名無しさん
2011/11/05(土) 16:49:48.92減ったコードの大部分がglueコードだと思っちゃったの?
どうやったらそんなにアホになれるの?
0654デフォルトの名無しさん
2011/11/05(土) 17:31:23.73他も部分も大したことないのは
容易に想像がつくだろ
0655デフォルトの名無しさん
2011/11/05(土) 18:15:08.89これは大部分じゃないのか?
0656デフォルトの名無しさん
2011/11/05(土) 18:24:09.830657デフォルトの名無しさん
2011/11/05(土) 18:26:13.39c++とschemeの公平な比較になってないわ
0658デフォルトの名無しさん
2011/11/05(土) 18:34:35.79行数が1/10になるぞとかいばりちらして
頭おかしいのな
0659デフォルトの名無しさん
2011/11/05(土) 18:42:35.21おかしい人から正常な人を見たら頭がおかしく見えるというのもあなが
ち嘘ではないというのは658が示してる悲しい現実がある。
0660デフォルトの名無しさん
2011/11/05(土) 18:45:05.860661デフォルトの名無しさん
2011/11/05(土) 18:47:56.13寄生してるって表現自体がキモいけど、
そういう意味ではVM言語は大体C/C++に寄生してるけどな
例えばJavaとか
0662デフォルトの名無しさん
2011/11/05(土) 18:48:34.45書いてみればいいのに。皮肉なことに関数型やってる人の多くは
CやC++の経験もある(というよりそちらが主流だから。)から
感じやすいんだろうな。そこからの反論だったら面白いことが
あるけどな。
この手のことって、左利き右利きのアナロジーと同じかな。
左利きは右利きのことはこなせるように強制されて、両利きや右になって
しまうけど、右利きには難しい。ここで右利きを主流、左を関数型と
捉えたらいいかもしれない。
ちょっとしたスタイルの違いで行数はずいぶん変わるけど、Lispは
カッコを閉じるとき)))改行だけど、主流は}改行}改行}だからな。この
どうでもいいところでもどうしても行数は減る。
0663デフォルトの名無しさん
2011/11/05(土) 18:51:49.11Javaチップで動かせばおけ
0664デフォルトの名無しさん
2011/11/05(土) 18:53:09.05多用しだすと、それだけでも全然違うよね。
考えなくてもC++より関数型のほうが行数が減るというのは必然的
だと思うんだがな。
コンパクトになることを認めたがらないってやっぱりオツムの問題だと思うよ。
0665デフォルトの名無しさん
2011/11/05(土) 18:56:53.21そしたらGroovyやClojureも動いちゃうだろ
0666デフォルトの名無しさん
2011/11/05(土) 19:00:50.25馬鹿だな。一人で戦ってシャドウボクシングをやってるように見てるのか。
0667デフォルトの名無しさん
2011/11/05(土) 19:03:07.40その2つはJavaに寄生してるだろ
0668デフォルトの名無しさん
2011/11/05(土) 19:10:02.34つーかネイティブコンパイルできるか否かと
型付けは関係ねーだろアホか
0669デフォルトの名無しさん
2011/11/05(土) 19:11:49.600670デフォルトの名無しさん
2011/11/05(土) 19:13:08.23本当に低能だな
0671デフォルトの名無しさん
2011/11/05(土) 19:18:07.64ネイティブコンパイルと型付けの関係が書いてあるんだよw
脳内で誰かと会話でもしてるん?www
0672デフォルトの名無しさん
2011/11/05(土) 19:18:46.45そもそもコード量が断然少なくなるからな
0673デフォルトの名無しさん
2011/11/05(土) 19:20:10.30頭悪いのか?
0674デフォルトの名無しさん
2011/11/05(土) 19:21:24.550675デフォルトの名無しさん
2011/11/05(土) 19:22:45.64頭おかしいレベルで馬鹿だな
0676デフォルトの名無しさん
2011/11/05(土) 19:23:43.83じゃあ静的言語に寄生してるって言葉の意味を定義しろよ
それは型付けと関係あるんだよな?
0677デフォルトの名無しさん
2011/11/05(土) 19:24:50.48大規模に到達する前にメンテナンス不能のゴミになるのが関の山
0678デフォルトの名無しさん
2011/11/05(土) 19:26:56.672 他の働きなどに頼り、生きていくこと。「芸能界に―する」
馬鹿のために辞書引いてやったぞ
0679デフォルトの名無しさん
2011/11/05(土) 19:28:54.86一体何に寄生してるの?
0680デフォルトの名無しさん
2011/11/05(土) 19:31:43.15これが"寄生"の正しい使い方だな
0681デフォルトの名無しさん
2011/11/05(土) 19:37:03.63寄生しているかどうかわからんだろ
0682デフォルトの名無しさん
2011/11/05(土) 19:41:33.03だがそれは×αとかではなく+α
コード量が少なければ+αの影響は大きくなるが
コード量が多くなるに連れて+αは誤差レベルにまで下がってしまう。
それが大規模と小規模でのコード量の違い。
そして大規模開発になると、コード量が大幅に増え、
時間的に考えて一人で作ることは不可能になる。
つまり、自分がコーディングをした知っている部分よりも、
知らない部分のほうが圧倒的に多くなる。
そうなると、書く量よりも、素早く他人が書いたコードの全体像を
把握する時間のほうが重要になる。
0683デフォルトの名無しさん
2011/11/05(土) 19:41:41.128万行もglueコード書くのは変な話だろ
静的言語換算で80万行なら
フルスクラッチで立派なGUIライブラリが書けるじゃん
0684デフォルトの名無しさん
2011/11/05(土) 20:09:21.84素直に読めば8万行のglueコードはC++で書かれてたんじゃないか?
0685デフォルトの名無しさん
2011/11/05(土) 20:14:57.49racketで8万行、静的言語で80万行相当の
GUIライブラリを書いた方がいいだろってこと
0686デフォルトの名無しさん
2011/11/05(土) 20:20:17.24つまらないバラエティ番組を見てる気分。
0687デフォルトの名無しさん
2011/11/05(土) 20:24:52.76ただのglueコードでは同じ行数でも難易度が違うよ
0688デフォルトの名無しさん
2011/11/05(土) 20:26:23.99684はどうしてglueコードがC++で書かれてないと思っていると
勝手に勘違いしたんだ?
0689デフォルトの名無しさん
2011/11/05(土) 20:28:45.650690デフォルトの名無しさん
2011/11/05(土) 20:30:02.440691デフォルトの名無しさん
2011/11/05(土) 20:30:31.760692デフォルトの名無しさん
2011/11/05(土) 20:30:38.96それだとどう読んでも
C++で書かれてたとは思わないだろ
馬鹿以外は
0693デフォルトの名無しさん
2011/11/05(土) 20:31:22.77静的型付け言語換算じゃなくて
0694デフォルトの名無しさん
2011/11/05(土) 20:32:12.07Racketで8万行ならともかく
0695デフォルトの名無しさん
2011/11/05(土) 20:33:49.48静的型付けと動的型付け言語じゃ、そうとう動的型付け言語に
有利な例題じゃない限り、そんなに差はでないだろう。
0696デフォルトの名無しさん
2011/11/05(土) 20:35:39.46いやC++は動的言語だよ。動的言語で静的型付け言語。
動的言語ってのは分かるよね?
インターフェースとか継承があって、実行時に呼び出すメソッドが決まる方式。
ちなみに型が静的に決まるのが静的型付け。
0697デフォルトの名無しさん
2011/11/05(土) 20:37:55.89関数があって、それを呼び出すコードがあって、
この結合が実行前に全部決まってしまうもの。
0698デフォルトの名無しさん
2011/11/05(土) 20:45:41.33コードが1/10に減るって話はどこから来たんだろうね?
C++とRacketの比較なら、ちょうど8万行が8千行に減ったという例があるわけだけど
0699デフォルトの名無しさん
2011/11/05(土) 20:48:56.36動的バインディングとは関係ない
0700デフォルトの名無しさん
2011/11/05(土) 21:02:06.89コード見てみないとなんとも評価できないよね。
こういうのはベンチマークと同じで、
一方はひどいコード書いてることが多いからさ。
ループで出来るようなことを何十回もコピペしていたりしてなw
0701デフォルトの名無しさん
2011/11/05(土) 21:07:33.09だとしたら低レベルの話でそんなドヤ顔しないでください。
その程度の話ならコールバック関数と何も変わらんじゃないか。
CでもJavaでも関数ポインタや関数オブジェクトで昔から誰でもやってます。
そうじゃないとGUIアプリなんか一つも書けないでしょ。
関数型の考え方っていうのは、mapやreduceのような関数を「臨機応変に自分で作る」ことを指すんだと思うよ
手続き型言語ならC++のTMPに近いんじゃないかなあ。
0702デフォルトの名無しさん
2011/11/05(土) 21:11:05.24それを臨機応変につくろうと思ったら、ここでループしてしまう話題に戻ってしまうよね。
ループさせないからあえて触れないよ。
0703デフォルトの名無しさん
2011/11/05(土) 21:11:56.570704デフォルトの名無しさん
2011/11/05(土) 21:17:28.790705デフォルトの名無しさん
2011/11/05(土) 21:18:25.460706デフォルトの名無しさん
2011/11/05(土) 21:19:41.400707デフォルトの名無しさん
2011/11/05(土) 21:23:22.670708デフォルトの名無しさん
2011/11/05(土) 21:24:48.200709デフォルトの名無しさん
2011/11/05(土) 21:33:13.910710デフォルトの名無しさん
2011/11/05(土) 21:56:47.03知らないって幸せなことだねw
0711デフォルトの名無しさん
2011/11/05(土) 21:58:11.510712デフォルトの名無しさん
2011/11/05(土) 21:58:31.20その内をヲチしてプッと笑うスレですから。
0713デフォルトの名無しさん
2011/11/06(日) 00:12:46.920714デフォルトの名無しさん
2011/11/06(日) 01:45:18.460715デフォルトの名無しさん
2011/11/06(日) 02:16:48.02お互いに好き勝手な事書いても、誰も客観的な検証も反論もできないから
延々とスレが伸びる
0716デフォルトの名無しさん
2011/11/06(日) 02:33:26.33どうしても説得力があることを言えないんだよ。
0717デフォルトの名無しさん
2011/11/06(日) 02:43:49.080718デフォルトの名無しさん
2011/11/06(日) 04:01:39.52肯定したい層=ドカタの書き込みにも全く説得力無いけどな
こいつらはドカタしか仕事無いんだろうなっていう説得力はあるけどwww
0719デフォルトの名無しさん
2011/11/06(日) 08:06:22.130720デフォルトの名無しさん
2011/11/06(日) 08:07:39.21キチガイLisperが荒らしているだけ
0721デフォルトの名無しさん
2011/11/06(日) 08:15:45.66時代に取り残されそうな人はいる。(余裕を持って)数年ごとに新しい言語
を学んだほうがいいといった所ですごく抵抗してたくらいだから。
0722デフォルトの名無しさん
2011/11/06(日) 08:36:59.03よう、ドカ太郎。
今日も早朝から頑張ってるなw
0723デフォルトの名無しさん
2011/11/06(日) 09:06:48.02言語を学ぶって、具体的にどういう行為を指してるのかわからん
初学者じゃあるまいし、新しいパラダイムが出てこない限り
言語なんて「学ぶ」という程大袈裟なものではないだろ
0724デフォルトの名無しさん
2011/11/06(日) 09:28:37.91無かったことにしたい層は学習意欲が高い。
0725デフォルトの名無しさん
2011/11/06(日) 09:31:48.340726デフォルトの名無しさん
2011/11/06(日) 09:32:32.43じゃあ、お前もいろんな遺産を
無かったことにしてみてください。
人生でも何でもいいですよ。
0727デフォルトの名無しさん
2011/11/06(日) 09:34:02.36具体的にはと言いながら激しく抽象的に思える
0728デフォルトの名無しさん
2011/11/06(日) 09:34:04.87先に言語を決める人?
考えは、言語決めるより先に行うことだから
全然制限になってないなぁ。
0729デフォルトの名無しさん
2011/11/06(日) 10:09:41.22と思ってるだけで実際は制限を受けているよ。
0730デフォルトの名無しさん
2011/11/06(日) 10:10:21.410731デフォルトの名無しさん
2011/11/06(日) 10:15:23.38抽象的概念は言語によるブレが大きいが、
もともと曖昧なものだから当てにしないのが普通。
0732デフォルトの名無しさん
2011/11/06(日) 11:02:19.09言語を学ぶことなんて大した事無いと言ってるのか分からん
前者ならマジで終わってる
0733デフォルトの名無しさん
2011/11/06(日) 11:10:55.080734デフォルトの名無しさん
2011/11/06(日) 11:20:47.24学んだ言語で社会に何を還元したかが問題
0735デフォルトの名無しさん
2011/11/06(日) 11:46:22.27言語はマスターできん
ま、COBOLerみたいにはならんようにな
自分から動かないと、ずっと同じ言語使わされて取り残されるかもしれんぞ
0736デフォルトの名無しさん
2011/11/06(日) 12:13:55.59君COBOL書ける?
0737デフォルトの名無しさん
2011/11/06(日) 12:28:29.30COBOLで仕事ができるってのは言語知識とは別のところにある
0738デフォルトの名無しさん
2011/11/06(日) 12:38:23.260739デフォルトの名無しさん
2011/11/06(日) 12:41:02.240740デフォルトの名無しさん
2011/11/06(日) 12:41:56.160741デフォルトの名無しさん
2011/11/06(日) 12:43:42.800742デフォルトの名無しさん
2011/11/06(日) 12:46:48.300743デフォルトの名無しさん
2011/11/06(日) 12:54:17.34仕事に使うかは別だろ
0744デフォルトの名無しさん
2011/11/06(日) 13:00:23.15それはCOBOLで仕事してなくても分かることだからな。
少ない仕事にしがみついて働くのもいいんじゃね?
職が見つけ難かったり安く買い叩かれたりするけど。
0745デフォルトの名無しさん
2011/11/06(日) 13:17:49.88可哀想に。
0746デフォルトの名無しさん
2011/11/06(日) 13:24:36.73昔よりは安いんだろうが、Webプログラマよりは給料高いと思うぞ
基本、ターゲットは大企業の基幹ソフトだから、会社に入る額の桁が違う
0747デフォルトの名無しさん
2011/11/06(日) 13:34:38.25同意。Web界隈は人が余ってるから本当に安売りが酷い。
つーかこの業界、メインストリームを行くなら人より早く深く、常に勉強し続けないと話にならん。
それができない奴はニッチなところで何か一つ売れる技術を身につける方がマシ。
人と同じことを人と同じ速さでやってる奴ってのが一番骨折り損。
0748デフォルトの名無しさん
2011/11/06(日) 13:37:54.37技術が広まる前に学ぶのが二流
広まってから技術を学ぶのが三流
廃れる技術に留まるのが無能
廃れきった技術を継承するのが伝統職人
0749デフォルトの名無しさん
2011/11/06(日) 13:39:28.56俺はFORTRAN。いろんな意味でw
0750デフォルトの名無しさん
2011/11/06(日) 14:04:46.66けど、スレチだからこっちへおいで
やってて楽しいプログラミング言語は? 3言語
http://hibari.2ch.net/test/read.cgi/tech/1305383738/
0751デフォルトの名無しさん
2011/11/06(日) 15:07:41.98静的型に固執するのはドカタのしるし
0752デフォルトの名無しさん
2011/11/06(日) 15:13:45.60伝統職人以外は、マルチ商法に似てる
0753デフォルトの名無しさん
2011/11/06(日) 15:18:13.89同意。
規模にかかわらず複数人数で開発するときは結局、みんなが知ってて開発効率がいい言語ってなる。
この場合、開発効率よりもみんなが知ってて、の方が重要。
0754デフォルトの名無しさん
2011/11/06(日) 15:18:38.260755デフォルトの名無しさん
2011/11/06(日) 15:19:23.42だから君は成長しないんだよ
0756デフォルトの名無しさん
2011/11/06(日) 15:35:14.81競争相手が世界中に発生する上にやってること自体はそんなに難しくないからな
コボラーはまだ業務の知識が必要だったりセキュリティ面でもある程度は保護される
web系は何もかもが表に出すぎてるから
数倍の効率で開発できるプログラマ程度じゃあ
十人のプログラマには勝てないだろ、賃金が安い連中が生き残る
今の時点でも英語で交渉できる奴の方が日本人プログラマよりも開発効率は上だろ
アプリもhtml5に食われて同じような現象になる
日本語の壁が守ってくれたところで円高のままだったらいつか食われるときがくる
その辺りまで考えてるよね、みんな頭がいいんだから
0757デフォルトの名無しさん
2011/11/06(日) 15:41:03.650758デフォルトの名無しさん
2011/11/06(日) 15:44:51.750759デフォルトの名無しさん
2011/11/06(日) 15:50:42.30仕事で火吹いたら「使えるようになりたい言語を趣味で使ってみる」余裕がなくなるので悪循環に陥る。
0760デフォルトの名無しさん
2011/11/06(日) 16:06:53.410761デフォルトの名無しさん
2011/11/06(日) 16:12:23.970762デフォルトの名無しさん
2011/11/06(日) 16:13:43.93技術を仕事で発揮するのがプロです
身に付けるのは仕事でもプライベートでもどこでも構いません
0763デフォルトの名無しさん
2011/11/06(日) 16:14:26.54人より先に技術を身につけたところなど見たこともないw
0764デフォルトの名無しさん
2011/11/06(日) 16:15:27.00そういう奴がプロジェクト燃やすんだよなー
0765デフォルトの名無しさん
2011/11/06(日) 16:19:52.51プライベートで人より先に技術覚えようよw
プライベートでも何か作って公開するくらい出来るでしょw
0766デフォルトの名無しさん
2011/11/06(日) 16:25:23.37でも失業者増大するかもしれない、人余りで流れ込む
円安に流れる可能性がある、そうなると大きな資本が投資に回る可能性が高まる
外資食いから国外の下請けになって失業という流れはありえる
仕事という役割には消滅するリスクがあるが知識は消滅しない
手に入れやすくなるほど知識には価値がなくなる
人の価値は知能の高さにある、今ある情報でどれだけ先を読めるかが
人の価値の本質となるだろう
頭の悪い奴は余計な事を含めて溜め込むのが好きらしいけど
おまえは頭がいいから必要な部分だけを溜め込んでるんだよな
読んだ後にこれは必要なものだと自覚するよりも
読む前からこういうのが必要なものだろうと予測できてるよね
一を聞いて十を知るというのはそういうことだ
0767デフォルトの名無しさん
2011/11/06(日) 16:35:45.56でも失業者増大するかもしれない、人余りで流れ込む
円安に流れる可能性がある、そうなると大きな資本が投資に回る可能性が高まる
外資食いから国外の下請けになって失業という流れはありえる
仕事という役割には消滅するリスクがあるが知識は消滅しない
手に入れやすくなるほど知識には価値がなくなる
人の価値は知能の高さにある、今ある情報でどれだけ先を読めるかが
人の価値の本質となるだろう
頭の悪い奴は余計な事を含めて溜め込むのが好きらしいけど
おまえは頭がいいから必要な部分だけを溜め込んでるんだよな
読んだ後にこれは必要なものだと自覚するよりも
読む前からこういうのが必要なものだろうと予測できてるよね
一を聞いて十を知るというのはそういうことだ
0768デフォルトの名無しさん
2011/11/06(日) 16:50:57.85お勉強はお勉強タイムでやる人?
つまり仕事中は何も学ばない人なんだね。
そういう人のことを ド カ タ って呼ぶんだよ。
仕事中に新しい技術を探求できない人に
新技術の開発なんて出来るわけないでしょww
逆に、新技術を仕事で通用するレベルで身につけようとするなら、
それに見合ったプロジェクトを自分で探したり選んだり、必要なら作ったりする。
それができない人は、やっぱり ド カ タ なんだと思うよ。
0769デフォルトの名無しさん
2011/11/06(日) 17:00:13.50もしかして客の金で、実験する人?
どんな料理のプロだって、
客を使って練習なんてしないよね。
試作品を客に食べさせるつもり?
0770デフォルトの名無しさん
2011/11/06(日) 17:01:43.28仕事で通用する技術は仕事中に身に付けます。
今は技術持ってません。で、仕事するつもりか
お前、仕事舐めてるだろ
0771デフォルトの名無しさん
2011/11/06(日) 17:01:46.14いきなり右も左も分からないもの仕事で使うの?マジスゲー。
0772デフォルトの名無しさん
2011/11/06(日) 17:03:55.90他人を自分の思い通りにコントロールしたいんだろ
自分の考えが正しいから他人も自分と同じ考えを持つべきだ
そうでない奴は見下してもいい差別してもいい
それは宗教、政治結社
思想は自由であるべきだし
それは個人が自分で考えて選択するべきだろ
支配力を行使すればするほど、命令に従う奴は思考を停止せざるを得ない
他人の意見を尊重しない組織に所属している人は余計なことをしなくなる
つまりおまえのいうドカタを作り出してるのはおまえみたいな考えの人間だよ
支配強化の先には奴隷国家があって
奴隷国家には模索する自由がない
模索する自由がない国で新しい何かを身につけましょうと言う
それはギャグでしかない
保守思想が他人に努力を要求していること自体が矛盾しているのだよ
0773デフォルトの名無しさん
2011/11/06(日) 17:04:59.20仕事をしてないことがばれちゃいましたね。
勉強することが仕事の学生さんならではの
発想ですwww
0774デフォルトの名無しさん
2011/11/06(日) 17:06:26.31最低限として自分がチームメンバーに教えられるレベルになっていないと話にならないだろ。
そこから仕事だから金くれってのは技術者として性根腐ってないか?
自分が使いたい技術を使うなら、そのくらいはギブ&テイクだと思ってタダでやれ。
なんて考える技術者が多いから技術者はいいように使われるんだろうなー
金儲けは下手だよね俺もお前らもw
0775デフォルトの名無しさん
2011/11/06(日) 17:08:14.930776デフォルトの名無しさん
2011/11/06(日) 17:10:04.11つまりお前は料理しながらこれっぽっちも成長しないんだな
おまえみたいな怠け者の料理人がいる店は、開店1ヶ月で閑古鳥だよw
0777デフォルトの名無しさん
2011/11/06(日) 17:11:05.570778デフォルトの名無しさん
2011/11/06(日) 17:15:38.02完成度の高いものの価値を維持する努力は
まったく方向が違うな
後者が努力していないというのはおかしい
金閣寺が金閣ビルに進化したら誰が得するんだよ
0779デフォルトの名無しさん
2011/11/06(日) 17:17:44.44> 実績の無い技術要素をチームに使わせるためには、
> 最低限として自分がチームメンバーに教えられるレベルになっていないと話にならないだろ。
なってれば何の問題もないのに、
「全員使える言語」(>>753-754)とか言い出すからドカタ根性なんだよw
実務の中で教えたり学んだり調査したりするのは技術屋なら当然だろ。
「習ってないから使えませーん」とか笑わせんなw
0780デフォルトの名無しさん
2011/11/06(日) 17:30:49.08部下はイエスマンばかりになる
余計なことを言って怒らせて立場を悪くしたくないから
知ってることがあっても何も言わずにただ従うだけ
ルールを厳守して余計なことは一切しない
つまりドカタになる
そして強引に物事を推し進める奴はドカタジェネレータだ
結論として
ドカタジェネレータをドカタに降格して
ドカタを再教育しなおせば変われるだろう
0781デフォルトの名無しさん
2011/11/06(日) 17:34:49.62仕事の中で新しい技術に挑戦しない組織ってのは、そういう傾向があるね。
「その方法論はオレは知らないからダメだ」
「その言語はオレが知らないからダメだ」
「そのフレームワークはオレが知らないからダメだ」
こうしてドカタ言語が固定化され、化石化していく
0782デフォルトの名無しさん
2011/11/06(日) 17:36:03.67これ思い出したわ
http://japanese.joelonsoftware.com/Articles/FiveWorlds.html
0783デフォルトの名無しさん
2011/11/06(日) 17:43:45.42民主主義は権力を分散することで
天才君主の可能性を潰す代わりに、滅ぶリスクも潰した
民主主義的にはチームの思想はばらばらなのが好ましいが
時間がかかる、スピーディーな解決が必要な場合では決断はトップが行う
これでバランスを取るんだよ
同じような奴を集めるのは保守的にしたい場合、金閣ビルを作らないように
コボラーには協調性が必要だけど
それ以外の変化が激しい部署では協調は不要、一つにまとめなくてよい
0784デフォルトの名無しさん
2011/11/06(日) 17:44:25.330785デフォルトの名無しさん
2011/11/06(日) 17:57:52.83いや、習ってないから使えません。で良いんだよ
出来ないのに出来るって言うのは、上司にも客にも無責任だろ
その上で、仕事に必要ならプライベートでも仕事の合間でも覚えれば良い
得意な言語でも、すべて知ってるわけじゃないだろ?
仕事中に教えてもらったり、調べながらで進めて行くのは得意な言語でも変わらない
0786デフォルトの名無しさん
2011/11/06(日) 18:14:59.42> その上で、仕事に必要ならプライベートでも仕事の合間でも覚えれば良い
典型的なドカタだねえ
ソフトウェア開発ってのは、企画者も開発者もいっしょに新しいものを開拓するんだよ。
今まで使ったことない言語ぐらい開拓していけないチキンが
新しい技術を開拓なんてできるわけがない。
既に使ったことがある技術だけ使う奴ってのは、結局は上から降りてくる仕様書通りに
誰でも書けるコードをそのまんま書くことしかできない。
今までにない技術を切り拓くことなんてできないのさ。
つまり、ドカタってことさ。
0787デフォルトの名無しさん
2011/11/06(日) 18:18:10.58だからな
新しい技術を開発する時と場所を選べよ
Googleも新技術開発する時間はメインの開発と分けて与えてるだろ?
0788デフォルトの名無しさん
2011/11/06(日) 18:23:17.05チーム立ち上げもチーム人員も自分独りってケースはあるがw
ま、そういう調査チームを作らせてくれない会社はヘボだし、
自分で調査チームを立ち上げられない奴はヘタレ
0789デフォルトの名無しさん
2011/11/06(日) 18:25:17.33へ?
googleが一日何個も新しいアルゴリズムを一般ユーザ相手に試していることも知らないのか?
簡単にデプロイするための独自のビルド管理環境を独立の専門チームが維持管理して、
それを使って本番システムに突っ込んで、実際のユーザからのリクエストの一部を
実験的アルゴリズムに回して、その結果を全部ロギングして分析評価してるんだよ。
アイツらが扱っているアルゴリズムはそこまでして実際の規模で動かさないと評価できねえんだよ。
0790デフォルトの名無しさん
2011/11/06(日) 18:26:44.05「ドカタは世界中が自分とこと同じやり方で開発していると思っている」
という実例だなw
0791デフォルトの名無しさん
2011/11/06(日) 18:28:20.53それはそういう「仕事」だからだろうが
こっちだって仕事で検証してとかなら普通にするわ
0792デフォルトの名無しさん
2011/11/06(日) 18:31:43.67そうやってママゴトプロジェクトで「俺がこの言語をマスターした!」とか言っちゃう時点でドカタだってのw
0793デフォルトの名無しさん
2011/11/06(日) 18:32:18.90で、>>787は取り下げるのか?それともまだ強弁してドカタ論理を展開するのか?
0794デフォルトの名無しさん
2011/11/06(日) 18:35:07.65検証プロジェクトは「俺がこの言語をマスターした!」と言うためじゃなく
その言語が使いモノになるか調べるためにやるんだが……
0795デフォルトの名無しさん
2011/11/06(日) 18:42:36.21取り下げないけど?
だって、>>789のそれだって会社の命令で実験するんでしょ?
責任のありかが全然違う。
自分で責任取るんなら、会社に説明して部下育てるのは当たり前だろ?
0796デフォルトの名無しさん
2011/11/06(日) 18:45:54.85で?
ちゃんと会社に説明して部下育てながら、使ったことのない言語を使って何が悪い?
0797デフォルトの名無しさん
2011/11/06(日) 18:47:16.20で、ママゴトプロジェクトで使い物になるかどうかわかった気になっちゃうの?
あるいは、ママゴトプロジェクトで使い物になるかどうかわかるほど枯れたドカタ仕事ばかりなの?
なるほどね、ドカタってのはこういう考え方するんだねw
0798デフォルトの名無しさん
2011/11/06(日) 18:48:10.56自分が使った事ない言語を、どうやって部下に教えんだよw
0799デフォルトの名無しさん
2011/11/06(日) 18:50:27.40モノになりそうなら、調査チームの人員を増やしたり
コケても影響の少ないプロジェクトで使ってみたり、段階的に投入していく
これはドカタという問題じゃなく、リスク管理の問題なんだよ
0800デフォルトの名無しさん
2011/11/06(日) 18:53:14.65どうやって説明すんの?
自分でも使った事無いけど、面白そうだから使わせてくれって上に言って企画が通んの?
すげーなw
0801デフォルトの名無しさん
2011/11/06(日) 18:54:21.44新しい物を開発する仕事と、仕事を受ける側が新しい手法を開拓するのを同一視すんなよ。
受けた仕事の中に新しいことをしなきゃならない部分があるのは仕方ないし、
プロなら客と相談や確認しつつ先に進めていくべきだ。
そういった事の中で新しい事を覚えていくというのなら分かる。
でも既に扱える技術の組み合わせでも実現可能なのに、そこで未知の新技術を投入するのはプロの仕事じゃないだろ。
少なくともその技術を導入するメリットを客に説明できる程度には知ってないと。
客のいない仕事なら自分の責任の範囲で好きにすればいいよ。
0802デフォルトの名無しさん
2011/11/06(日) 18:54:27.79例えば、俺は使えるがメンバー全員が使えるわけじゃない場合、
そのメンバーにとっては「使ったことない言語」なわけだ。
全員が使ったことがある言語しか使わねえってのが>>753-754だろ。
あと、別に俺が使えなくたって、有能な部下が使っている言語なら、
そいつにリーダーまかせて指導させるし、俺も頭下げて指導受ける。
技術者として、知っている奴が主導していく。当然だろ?
どうやらドカタ界隈じゃ肩書きが全てらしいけどなw
0803デフォルトの名無しさん
2011/11/06(日) 18:57:19.82で、プロジェクトを走らせながら新しい言語の1つや2つも学ぶ姿勢のない奴が
どうやって言語以外の技術を切り開いていくんだい?
けっきょくお前が言っているのは
「お客様に人月で雇われた身だから、お客様に言われたことだけします。
新しい技術とか仕事では使いません。」ってことだ。
わかりやすいドカタ思考。
0804デフォルトの名無しさん
2011/11/06(日) 19:01:20.91あれ?チームに経験者がいる場合の話か?
それなら話は違うっつーか完全に同意なんだが
あと>>753-754と一緒にするのはやめれ。あれはドカタ過ぎる
0805デフォルトの名無しさん
2011/11/06(日) 19:03:39.40なんだお前は個人の視点で話をしてるのか。
悪かったな。お前の視点での話ならお前の言うとおりだ。
0806デフォルトの名無しさん
2011/11/06(日) 19:10:05.44仕事の後に勉強会でも開けよ
覚えの悪い部下はどうするんだ
複数人で開発した事無いだろ
0807デフォルトの名無しさん
2011/11/06(日) 19:20:55.01現実を知らない奴だよ
立場が弱くなるほど選択肢がなくなって
不利な条件になるから時間もなくなる金もない
努力する時間もない寝る時間すらもない
バカな政治家がホームレスを怠け者と言うけどさ
ホームレスを多数作り出す政治をする政治家の方がよほど怠け者だろ
無数の選択肢があっても現状を変える能力のない
そういう自分を恥じるべき、そのために努力したんじゃないのか
おまえは頭がいいから頭の悪い人たちを導くべきじゃないのか
努力した結果が他人を見下すための立場だとしたらそんな社会はクソだろ
保身のための努力の結果が原発だよ
歩きつかれたあの人へ冷たい言葉を平気で放つ
まさにそのとおりの人間だな
0808デフォルトの名無しさん
2011/11/06(日) 19:21:01.90同意だが、技術を磨くのと、仕事で確実に結果を残す事は分けて考えろ
そんなんだと信用なくすぞ
0809デフォルトの名無しさん
2011/11/06(日) 19:25:43.920810デフォルトの名無しさん
2011/11/06(日) 19:29:31.33どっちか一種類しかないと考えてる時点で、両方ともドカタなのがバレバレ (w
0811デフォルトの名無しさん
2011/11/06(日) 19:45:37.90チャレンジャーな案件はプログラマに丸投げ
一応責任物が結果はちゃんと出せよ
じゃね?
自分が使える言語で一番好きな言語は使っても、これから言語覚えながらチャレンジャーな案件とか、上司にも客にも結果を確約出来ないな
0812デフォルトの名無しさん
2011/11/06(日) 19:49:28.050813デフォルトの名無しさん
2011/11/06(日) 19:50:32.27さすがにチャレンジャーな案件は無いだろ
0814デフォルトの名無しさん
2011/11/06(日) 19:52:28.97そんな当たり前な事ドヤ顔で言うなよ
0815デフォルトの名無しさん
2011/11/06(日) 19:55:38.63全ての案件は下請けに丸投げ
さらに下請け孫請けのコンポジットパターンを形成してヤクザにピンはねされ
最終的にホームレスが現場で働いて死ぬ
余った利益でマスコミに広告を打ちまくり
政治家に献金して官僚に天下り先を作る
そして大失敗した場合は災害のせいにして国に助けを求める
これが基本パターンだな
0816デフォルトの名無しさん
2011/11/06(日) 19:56:37.56結果を確約出来るならな
プロはまず結果ありきだろ
どっちかっつーとプライベートにどれだけ技術を磨く時間注ぎ込めるかが一流と二流の分かれ目な気がする
0817デフォルトの名無しさん
2011/11/06(日) 19:57:21.58新技術の勉強会とか自分らの金と時間使って勝手にやれっつう方が多いやろうな
0818デフォルトの名無しさん
2011/11/06(日) 20:05:40.97チャレンジを設定できないチキンが結果なんて出せるわけがない。
もちろんチャレンジのためのリソースと客の理解を確保した上での話だ。
それができないならそもそもそんな仕事を受けるべきじゃない。
0819デフォルトの名無しさん
2011/11/06(日) 20:09:35.890820デフォルトの名無しさん
2011/11/06(日) 20:13:25.29まあ、そういう職場も多いらしいが。
さすがに新しい手法とか規模のでかいチャレンジはそれ相応の対応が要るよ。
>>813
そりゃそうだな、すまん。
>>814
その当たり前のことがわかってない議論が延々と続いているんだが...
>>819
自社製品でも、客が偉いさんに変わるだけだろ。
0821デフォルトの名無しさん
2011/11/06(日) 20:40:40.42技術や技能はおろかなんも勉強しねえ
英語すら読めねえ書けねえ
指摘されても教えられても明後日
なんか渋々覚えたことしか出来ねえやらねえ
何てのはザラ
二度とからみたくないわ
0822デフォルトの名無しさん
2011/11/06(日) 20:51:26.55そんな客居るか?
つーか、プライベートで技術を磨けない方が二流じゃね?
0823デフォルトの名無しさん
2011/11/06(日) 20:55:44.58それを英語で書いてみてよ
0824デフォルトの名無しさん
2011/11/06(日) 20:57:57.200825デフォルトの名無しさん
2011/11/06(日) 21:50:41.49英語出来ない自分でもMy work is Dokata. My job level is low level.位には書けるぞ。。。。
0826デフォルトの名無しさん
2011/11/06(日) 21:52:21.02仕事もプライベートも関係ない
0827デフォルトの名無しさん
2011/11/06(日) 21:53:08.630828デフォルトの名無しさん
2011/11/06(日) 21:54:49.72おい、英語はどうした?w
はっきり言ってな。お前よりも
ドカタのほうが100倍優秀だ。
0829デフォルトの名無しさん
2011/11/06(日) 21:56:10.95They are really stupid, and never study everything
not to mention technology and technique.
Of course, they can't read and write English.
No matter how hard I teach or point out things they pay no attention.
They perform minimum work in a grudging manner.
I don't want to deal with Dokata again.
0830デフォルトの名無しさん
2011/11/06(日) 22:04:26.74技術を発揮する時間を技術を磨く時間に使ってる時点で二流だってのw
0831デフォルトの名無しさん
2011/11/06(日) 22:12:27.11やればできるじゃないか。合格点を与えよう。
0832829≠821
2011/11/06(日) 22:13:48.990833デフォルトの名無しさん
2011/11/06(日) 22:24:19.43ドカタのほうが技術力上だよ。
いや、当たり前なんだけどねw
ドカタは元学生なわけだし。
0834デフォルトの名無しさん
2011/11/06(日) 22:30:50.07技術力ってほっとくとどんどん下がるよ。
本人そのままでも、回りはどんどん進むからね。
だから、普通の学生より技術力のないドカタなんていくらでもいる。
て言うことが理解できてない、>>833 もその手の口かと。
0835デフォルトの名無しさん
2011/11/06(日) 22:33:39.90なんか今日はマジでドカタを見下してる感じの人が居て引くわー
ちゃんと冗談って分かってやってるんだよね?
0836デフォルトの名無しさん
2011/11/06(日) 22:51:58.08誰かが英訳してくれてる流れにわろた
0837デフォルトの名無しさん
2011/11/06(日) 23:28:19.51その「普通の学生」って帝大レベルの普通の学生っていう意味で使ってるよね?
それなら同意。
そうでなくピンからキリまで日本の大学全般の平均っていう意味で言ってるなら
それよりレベルの低いプログラマなんかどこにもいないよ
0838デフォルトの名無しさん
2011/11/06(日) 23:28:26.45それは、学生でも馬鹿はいるよ。と言ってるのとなにも変わらんw
0839デフォルトの名無しさん
2011/11/06(日) 23:31:13.55こういうくだっらない喧嘩は誰も何の得にもならない
せめてスレタイに沿った議論をしろよ
0840デフォルトの名無しさん
2011/11/06(日) 23:32:02.68> それよりレベルの低いプログラマなんかどこにもいないよ
つ、鏡
>>838
どうやったら、そんな変な解釈ができるのか...
0841デフォルトの名無しさん
2011/11/06(日) 23:35:40.15ネタ振りどうぞ
0842デフォルトの名無しさん
2011/11/06(日) 23:36:17.16動的型付けと静的型付けの話をしろ
0843デフォルトの名無しさん
2011/11/06(日) 23:37:35.99ネタ振りどうぞ
0844デフォルトの名無しさん
2011/11/06(日) 23:45:00.89主な理由はコンパイル時に多くのエラーがわからないといったところだろうけど
ideの発達により動的型付け言語ですらメソッドの補完もできるようになり
かなりの静的解析をやってしまうようになった
それでもまだ向かない理由ってなんだろうか
0845デフォルトの名無しさん
2011/11/06(日) 23:51:39.56ドキュメントはコミュニケーションの重要な要素の一つであり
ソースコードはもっとも重要なドキュメントである
一般には静的型付け言語のほうがドキュメント性が高い
(コードそのものに型という形でプログラマの意図を直接記述できるという意味で)
コードとして記述された意図は人とコンパイラの両者に理解され機械的に
チェックされるので、コメントやドキュメント文字列の類よりはるかに厳密で
誤りの可能性が少ない
こんなところでどうか
0846デフォルトの名無しさん
2011/11/06(日) 23:55:29.72そのドキュメント性が、コメントや変数の名前に
勝る理由が、コンパイラによってチェックされるからだ
と言われても、あまり俺には説得力を持たない
具体例で説明できたらいいと思う
0847デフォルトの名無しさん
2011/11/07(月) 00:03:11.87具体的といっても……
# x: int, y: int
def add(x, y):
if not isinstance(x, int): 〜
とか書くぐらいなら
int add(int x, int y)
のほうがいいだろう、ということだけど
後者のほうが楽で、見た目で明らかで、コメント不一致やチェック抜けなどの
誤りが入る余地が無い
0848デフォルトの名無しさん
2011/11/07(月) 00:05:48.01反論があるのは承知しているし、実際その通りなんだが
何もないよりはチェックできる部分が多いほうが相対的にマシだ、という考え
0849デフォルトの名無しさん
2011/11/07(月) 00:08:08.57そんな動的型付け言語用のIDEあるなら教えてほしい。
0850デフォルトの名無しさん
2011/11/07(月) 00:09:16.46コードに説明が書いてあることが重要。
0851デフォルトの名無しさん
2011/11/07(月) 00:26:53.74コードとドキュメントは本当に一致しているのか?って問題が起きるからね。
コード=ドキュメントと考え、コードに全てを書く方が間違いが起こらない。
そして言語仕様として扱うと、コンピュータが機械的に理解できるようになる。
そうすると、人間が不得意な類の間違い(スペルミスとか誰でのやるミス)を見つけてくれる。
0852デフォルトの名無しさん
2011/11/07(月) 00:43:22.42マークシートを塗りつぶすだけの解答用紙みたいに。
ドキュメントとしては役に立たない。
0853デフォルトの名無しさん
2011/11/07(月) 00:48:11.27マシン語の16進数でプログラム組むようなもん
悪夢以外の何物でもない
0854デフォルトの名無しさん
2011/11/07(月) 00:55:27.62なぜ役に立たないと思ったの?
その理由を明確に述べなさい。たとえ話ではなく。
0855デフォルトの名無しさん
2011/11/07(月) 01:06:03.87たとえ話を禁止されて何も書けなくなるより
形式にこだわらず何か書く方がドキュメント性は高い。
0856デフォルトの名無しさん
2011/11/07(月) 01:06:39.73コンパイル時に型チェックが行われるのも、その一部と考えていい。
動的型言語は実行してみるまで何が起きるかわからないので、
コーディングの記述量が減っても、きっちりテストをしようと思うと、テストケースが膨れ上がってしまう。
0857デフォルトの名無しさん
2011/11/07(月) 01:12:20.41参考までに訊くけど、どんなテストケースが増えるの?
具体的に頼むね
0858デフォルトの名無しさん
2011/11/07(月) 02:35:04.81いいや、この場合は喩え話じゃダメだね。
一般的に喩え話を使って批判すると、
一体何を批判しているのかわからなくなる。
カレーってウンコみたいな色だよね。
ウンコ食べたいと思う?みたいにウンコを
批判する話にすり替えるという下らない事やり始める。
0859デフォルトの名無しさん
2011/11/07(月) 02:39:38.41たとえば、itoaみたいな関数の場合。
C言語なら引数はintって決まっているから引数の型のチェックの必要はないが、
動的型付け言語だと、引数がintであるかのチェックを関数でしないといけないし、
また関数にそのチェックが加わったことで、それに関するテストケースが必要になる。
0860デフォルトの名無しさん
2011/11/07(月) 05:11:48.680861デフォルトの名無しさん
2011/11/07(月) 05:20:24.640862デフォルトの名無しさん
2011/11/07(月) 05:50:02.15Smalltalk系の環境なら大抵当てはまるな
おっと、GNU Smalltalkは別な
0863デフォルトの名無しさん
2011/11/07(月) 06:07:51.69あと、マイナーだが、intellij ideaのluaとか、clojureプラグイン
0864デフォルトの名無しさん
2011/11/07(月) 08:28:17.18不正入力のチェックなんて、動的静的関わらず必須だろ。
他の例で説明頼む。
0865デフォルトの名無しさん
2011/11/07(月) 08:39:55.80実はstringを返せるならどんな型でも良かったんじゃないか?
実際に動的型言語では x.to_s() や str(x) のようなやり方が殆どだ
つまり何が言いたいかというと、例が悪い
あまりに悪すぎて、動的型言語を使った事が無いのかと疑いを持つレベル
0866デフォルトの名無しさん
2011/11/07(月) 08:50:01.590867デフォルトの名無しさん
2011/11/07(月) 08:57:40.63to_s を x ごとに実装するのだから中身は itoa 作ってるのと同じ。
「x が to_s を持っているか否か」をコンパイル時にチェックして、
持っていなければコンパイルエラーにするのが静的型付け。
実行時にチェックして、持っていなければ実行時エラーにするのが動的型付け。
0868デフォルトの名無しさん
2011/11/07(月) 09:03:34.88動的にチェックするのがデバッグモードだけで、リリースモードでは
「x が to_s を持っていなければ単に暴走する」
でも大規模システムの開発効率上問題ないか?
問題ないと自信を持って言い切れるならこの議論は終わりだと思う。
「いやそれはさすがに問題だ」というなら、何故問題なのか。
そこを考えてみてほしい。
0869デフォルトの名無しさん
2011/11/07(月) 09:08:21.55to_s や __str__ を持ってるか否かなんだから、いわゆる「型」の話じゃない
そしてメソッドの有無も、わざわざチェックしなくても無かったら例外が出る
ということを踏まえて、どんなテストケースが増えるんだ?
0870デフォルトの名無しさん
2011/11/07(月) 09:23:20.890871デフォルトの名無しさん
2011/11/07(月) 09:25:43.62具体例付きでな
0872デフォルトの名無しさん
2011/11/07(月) 09:34:07.810873デフォルトの名無しさん
2011/11/07(月) 09:36:30.43うーん。君の理解はいまいち。
オブジェクトがメソッドを持っているということを「型」で表現するのが、
インタフェースの考え方そのもの。
わざわざチェックしなくても無かったら例外を出してくれるのは、
実行時システムがチェックしてるから。
0874デフォルトの名無しさん
2011/11/07(月) 09:39:57.69itoaみたいな的外れの例しか出せないし、
具体例を出すと突っ込まれるから
段々抽象的なことしか書けなくなる
0875デフォルトの名無しさん
2011/11/07(月) 09:41:44.58で、実行時システムがチェックする動的型言語を使った場合に
どんなテストケースが増えるの?
0876デフォルトの名無しさん
2011/11/07(月) 09:43:48.340877デフォルトの名無しさん
2011/11/07(月) 09:45:16.60だからといって、大抵の言語ではそのまま暴走するなんてことにはならず、
ちゃんと例外が出る。
なぜ例外を出せるかっていうと、
実行時システム (VM と言ってもいい) がチェックしているから。
大抵の用途では、暴走するより例外として検出できる方がよい。
その例外を適切に処理するコードさえ書いておけば何とかなるので。
(配列の範囲外アクセスはほぼ100%バグなので、catch して何とかするというのは本来違うと思うが、例外処理一般論として)
でも、もし可能なら、実行時に例外を出してもらうよりコンパイル時に検出できる方が、さらによい。
コンパイルが通れば範囲外アクセスは無いということが保証されるなら、catch する処理はいらないから。
もっと言うと、コンパイル時に検出するより、書いた瞬間にエディタ上で教えてくれる方が、さらによい。
周知のとおり、今の IDE は可能な限りそうしようとしているね。
こんな感じでどうでしょうか。
0878デフォルトの名無しさん
2011/11/07(月) 09:47:25.31877 を踏まえて直接的に答えるなら、
to_s を持つモックオブジェクト、持たないモックオブジェクトを作って、
それぞれ、to_s が実行されること、例外が発生することをチェックするテストケースが必要。
0879デフォルトの名無しさん
2011/11/07(月) 09:49:12.04overrideすることをうっかり忘れてもコンパイル時にチェックすることはできない
0880デフォルトの名無しさん
2011/11/07(月) 09:50:52.82そんなんテストする馬鹿がいるか
0881デフォルトの名無しさん
2011/11/07(月) 09:51:44.08その程度の汎化は各自で頼むね。
0882デフォルトの名無しさん
2011/11/07(月) 09:53:30.36言語仕様で決まってんだよ
そんなんテストするアホがいるか
0883デフォルトの名無しさん
2011/11/07(月) 09:55:53.140884デフォルトの名無しさん
2011/11/07(月) 09:56:11.67その例外が上がらない言語は困るでしょ?そこは同意できる?
できるなら次。
その例外が起きるのは、作ろうとしているシステムにとって正常系?
つまり、to_foobar を使う関数に to_foobar を持たないオブジェクトを「意図的に」渡して、
「意図的に」例外を発生させて、その例外処理の中で「意図的に正常系の処理を書く」
ようなシステムを作ることってある?
0885デフォルトの名無しさん
2011/11/07(月) 10:10:17.41型を調べたり例外を調べると意図がわかりにくい
0886デフォルトの名無しさん
2011/11/07(月) 10:13:17.46って話だと思ったんだけど違うの?
0887デフォルトの名無しさん
2011/11/07(月) 10:18:56.12method missingを使うシステムは、まさにそうだろう(実際には例外は発生しないが)
で、それはそれとして、そういうのを異常系として認めたくない場合、
静的型言語では何もしなくてもコンパイラが弾くけど
動的型言語ではテストしなきゃ弾けない
ここまでは静的型言語の良いところで、皆が認める
でも、結局のところテストは書くんだろ?
そのときにどんなテストケースが増えるのか?というのが質問なわけよ
0888デフォルトの名無しさん
2011/11/07(月) 10:19:59.94Pythonで文字列のリストに"foo"という文字列が含まれているか検査する関数を考える
def has_foo(xs): return 'foo' in xs
以下が、意図された動作
has_foo(('foo', 'bar')) → True
has_foo(('bar', 'bazz')) → False
しかし、以下が何の実行時エラーにもならないことにも注意しよう
has_foo('foo') → True
has_foo('fooo') → True
たぶんこれは意図したことではないはずだ
0889デフォルトの名無しさん
2011/11/07(月) 10:21:24.87一番たちが悪い
0890デフォルトの名無しさん
2011/11/07(月) 10:23:11.28もちろん「正しく」使っていれば
has_foo(('fooo')) → False
has_foo(('fooo', 'foooo')) → False
こうなるよ
0891デフォルトの名無しさん
2011/11/07(月) 10:23:57.79has_foo(('fooo',))
のように書かないといけないのだったな
0892デフォルトの名無しさん
2011/11/07(月) 10:27:19.230893デフォルトの名無しさん
2011/11/07(月) 10:34:53.45なぜこのごく単純で馬鹿馬鹿しい問題に多相型を持ち出す必要があるのだろうか?
ごくシンプルな問題だから、シンプルで誤りの入りようがない解を静的型なら書ける
「リストでは限定しすぎだから文字列のコレクションは受け入れる」としても
特に問題はない
0894デフォルトの名無しさん
2011/11/07(月) 10:37:28.75strを受け取った時は'foo'を部分列として持つ場合に真を返す
has_foo という名前から連想される多相関数としては、極めて妥当な振舞いだと思うけどね
0895デフォルトの名無しさん
2011/11/07(月) 10:38:52.040896デフォルトの名無しさん
2011/11/07(月) 10:42:26.16現実の例としては、これを例えばキーワードをチェックしている関数と考えたら
意味が分かるだろう
whilexがキーワードと判定されても満足だろうか?
0897デフォルトの名無しさん
2011/11/07(月) 10:44:45.95(型推論があってもランク2多相には型注釈が必須)
静的型言語では単相的に振る舞う関数が書きやすい
それだけの話なわけだが
0898デフォルトの名無しさん
2011/11/07(月) 10:47:23.54上の例を見てわかるのは、正確には
動的型言語では意図しない範囲まで多層的振る舞いが広がる可能性がある
ということだ
0899デフォルトの名無しさん
2011/11/07(月) 10:48:56.61引数がコレクションか否かまで判定する必要がある関数を定義したきゃ
def has_foo_in_collection(xs):
return is_collection(xs) and has_foo(xs)
という関数にでもしとけよ
0900デフォルトの名無しさん
2011/11/07(月) 10:49:51.51振る舞いになっているかどうかは「わからない」
処理系から見れば弾くべきところがないのだから実行時エラーにもならない
通常は、しばしば発見が困難なバグにつながる
0901デフォルトの名無しさん
2011/11/07(月) 10:51:51.88それを想定できないのは動的型言語プログラマとして未熟なだけ
0902デフォルトの名無しさん
2011/11/07(月) 10:53:29.960903デフォルトの名無しさん
2011/11/07(月) 10:54:31.190904デフォルトの名無しさん
2011/11/07(月) 11:00:53.30大規模開発は無理
0905デフォルトの名無しさん
2011/11/07(月) 11:02:44.690906デフォルトの名無しさん
2011/11/07(月) 11:03:53.76あんなミスはしないんですけどね
0907デフォルトの名無しさん
2011/11/07(月) 11:59:51.000908デフォルトの名無しさん
2011/11/07(月) 12:01:26.520909デフォルトの名無しさん
2011/11/07(月) 12:03:51.16x.has_foo() って呼び出すべきだな
文字列は has_foo メソッド持ってないから例外だ
0910デフォルトの名無しさん
2011/11/07(月) 12:27:34.84もちろん引数型を明示的にチェックして単相をエミュレートすることも可能だけれども
それをやるぐらいなら最初から静的型のほうがマシでは?
これはどちらがデフォルトのほうが適切/マシか、という議論かもしれないな
>>901
>>906
人は誤り、かならず見落としをし、バグは生まれるものだ
そして大規模開発ではそれだけ誤りが発生する可能性が高い
ということが理解できないようでは動的・静的型関係なしでプログラマとして未熟だ
0911デフォルトの名無しさん
2011/11/07(月) 12:37:08.53で、>>909のように実装したとして、どんなテストケースが増えるんだ?
0912デフォルトの名無しさん
2011/11/07(月) 12:44:59.66>>909の場合は、仕様が違うし使い勝手はデグレードしているね
元のhas_foo()にはiterable, list, tuple, setを直接渡せて
その場合には意図した動作になっている
より重要なことは、>>888のような実装をすると問題があるとして、
「そういう問題のある実装をしない」ことは保障のしようがない
0913デフォルトの名無しさん
2011/11/07(月) 12:49:16.18同じ仕様の関数を書こうとしたら多相型にするかObject型(top)渡すしか無いじゃん
勝手に有利な仕様を持ち出されてもな
そんで、x.has_foo() って仕様で現実問題として何か困んの?
0914デフォルトの名無しさん
2011/11/07(月) 12:52:27.77> 「そういう問題のある実装をしない」ことは保障のしようがない
in : 'a -> 'b -> bool って二項演算子があって
let foo xs = 'foo' in xs
って書いたら静的型でも一緒だろ?こういう関数を書くのをどうやって防ぐの?
0915デフォルトの名無しさん
2011/11/07(月) 12:53:45.75そう、多相になるけれども、たとえば.NETなら
IEnumerable<String>とでもすればいい話だろう
IEnumerable<String>はIEnumerable<Char>とは違う型なので、文字列を
文字のコレクションとして扱える言語でも、文字列を渡せばエラーは検出できる
Pythonでもstrが「文字の」シークエンスだったなら、has_foo()にstrを渡したら
'foo'との比較時に実行時エラーになってくれるだろうが、そうではない
0916デフォルトの名無しさん
2011/11/07(月) 12:55:38.12それはその通り
ただ、動的型言語のほうが、その種の罠にごく自然に、圧倒的に
はまりやすいように見えるんだよ
「すべてが」多層型の世界なんだから
ま、主観だがな
0917デフォルトの名無しさん
2011/11/07(月) 13:00:16.210918デフォルトの名無しさん
2011/11/07(月) 13:00:48.16>>910
> これはどちらがデフォルトのほうが適切/マシか、という議論かもしれないな
テストケースが増えるかどうかはともかく、これについては同意だな
フレームワーク的なものを作るときは多相型がデフォルトの方が楽だし、
そうじゃないときは単相型のほうが安心な気がする
0919デフォルトの名無しさん
2011/11/07(月) 13:05:18.230920デフォルトの名無しさん
2011/11/07(月) 13:38:07.17一通りのコンパイル時チェックもやってくれると思うんだが
多相型が不安なら多相型使わなきゃいいだけの話じゃん
お前ら何を話してるん?
0921デフォルトの名無しさん
2011/11/07(月) 13:42:34.240922デフォルトの名無しさん
2011/11/07(月) 14:54:51.450923デフォルトの名無しさん
2011/11/07(月) 16:41:06.57ここは隔離スレ。
自分の好きな言語を否定されたと思い込んでる者の溜まり場です。
0924デフォルトの名無しさん
2011/11/07(月) 17:11:32.68そう見えるのは、お前の経験の浅さから来ているんじゃないのか?
静的型が有ろうが無かろうが、静的解析の限界はおなじ。
0925デフォルトの名無しさん
2011/11/07(月) 17:15:19.16依存型のみでのプログラミングは記述能力がガタ落ちだけどな。
静的型付け可能な式は動的型で記述可能な式の極一部で、
依存型で安全性を証明可能な式は静的型付け可能な式のもっと極一部だ。
0926デフォルトの名無しさん
2011/11/07(月) 17:19:50.04隔離スレですね。ああいえば上祐(死語)もあるし、内容を見てその
滑稽さにいろいろ感じることがいいのかも。プログラマーのための
バラエティスレだよね。ただ、色んなひといるみたいで、現場の人
アカデミックの人そこからドカ太郎まで見かける。共通してるのは
比較的暇を持て余している状況下にある人で占められているという事。
0927デフォルトの名無しさん
2011/11/07(月) 17:24:43.79みんな自分と同じだと思い込む認知バイアスの実例オツ
0928デフォルトの名無しさん
2011/11/07(月) 17:39:54.22いえいえ。バイアスかどうかなんとも言えんが、例外として忙しくても
このスレにきて書き込みをする人がいても不思議じゃない。だが、彼ら
の多くは時間を捨てるということにかなり敏感だよ。なぜならここは、
時間を捨てるようなものなので。俺も時間を捨ててるな。
0929デフォルトの名無しさん
2011/11/07(月) 17:49:18.90所で、静的型言語のメリットとして、コンパイル時のエラーチェックを挙げる人が多いみたいだけど、工程の中でコンパイルエラー取りってそんなに大きい割合を占めるのか?
大規模化するほど、他の作業の比率が高くなってたけどな。
0930デフォルトの名無しさん
2011/11/07(月) 18:04:27.67大きな割合占めてたら困るだろw
0931デフォルトの名無しさん
2011/11/07(月) 18:05:08.73関数型言語で型宣言せずに型推論でゴリゴリ書くと、
とんでもないスピードで時間が過ぎていくぞ。
型推論があれば型宣言しなくていいから楽チンなんて書いてるアフォがたまにいるが、
実用規模のコードを型推論ベースで書いたことがない奴と断言できる。
型宣言しても型変数つかうとやっぱり型エラーのバグ取りは簡単じゃない。
ただ、型推論と違って型変数の名前がデバッグのヒントになるからまだマシ。
0932デフォルトの名無しさん
2011/11/07(月) 18:17:57.18他にメリットらしいものを挙げないから、余程コンパイルエラーで困ってるんだろう。
0933デフォルトの名無しさん
2011/11/07(月) 18:29:28.02>>246
0934デフォルトの名無しさん
2011/11/07(月) 18:34:00.42直前までの型推論の結果を読んで、
最終的に出てきた矛盾の本当の原因を、
そこに至るまでの数十個の推論結果から探し出すんだろ?
楽しいか?俺には地獄だ。
0935デフォルトの名無しさん
2011/11/07(月) 18:42:41.22ばっかじゃないの?
0936デフォルトの名無しさん
2011/11/07(月) 18:45:16.05要するに、関数型言語を使った事無くて想像で書いてるんですよね
知らない事に首突っ込んでドヤ顔止めてもらえません?
0937デフォルトの名無しさん
2011/11/07(月) 18:52:34.83お前アホだろ
0938デフォルトの名無しさん
2011/11/07(月) 19:49:08.50メンバーがエキスパート揃いなら、そんな事は勿論無いだろうけど、それならそもそも動的・静的は無関係。
0939デフォルトの名無しさん
2011/11/07(月) 20:04:33.45実行時エラーは、少なくともそのパスを通さないと発覚しない
>>888のような問題は、テストによっては通ってしまう可能性さえある
静的型言語では、そうした問題(の少なくとも一部)を容易に早期発見できるようには
なる
0940デフォルトの名無しさん
2011/11/07(月) 20:06:59.90しばしばboostの実装(テンプレートとマクロの魔宮)を自分で見なければ
原因が判明しないことがあるな
0941デフォルトの名無しさん
2011/11/07(月) 20:11:56.23型で片付く程度の単純な問題を早期確実に発見することで
ダメージが少なくて済むのがポイントなので、
コンパイルエラー取りに時間がかからないから意味がないのでは?という指摘は
ちょっと的外れのような気がするな
0942デフォルトの名無しさん
2011/11/07(月) 20:45:55.650943デフォルトの名無しさん
2011/11/07(月) 20:49:09.790944デフォルトの名無しさん
2011/11/07(月) 20:50:57.54スレタイからしても、型を否定してる訳じゃないと思うが。
0945デフォルトの名無しさん
2011/11/07(月) 21:03:21.13因みにうちの場合は、データ構造とか基本ロジックを固めるまでは動的言語であれこれ試作してる。
人数が必要な工程では、動的言語使ったDSLでJavaとかCのソース生成。
アプリレベルの不整合有無のチェックは別のDSLでパース。
他所では事情が違うだろうけど今の所、動的・静的の一方だけで何でもやろうとするのは無謀、という判断。
0946デフォルトの名無しさん
2011/11/07(月) 22:58:36.12静的型付け言語のほうがいいって結論になってるな。
0947デフォルトの名無しさん
2011/11/07(月) 23:04:16.18> コンパイルエラー取り以外のメリットを提示しないから、他のフェーズではメリットないの?という流れ。
コンパイルエラー以外のメリットですか?
メソッド名とか、その引数とか、ドキュメントを
リアルタイムで教えてくれる所。
コーディングしていて、えーとこの関数なんて名前にしよう?って
迷った時、とりあえず書いておいて、あとからじっくりいい名前に修正するってのが
関数名だけじゃなく、クラス名だったり、変数名だったり、いろいろ簡単に行えること。
設計がきっちり固まっていないとき、とりあえず書いておいて
あとからきちんと修正するのが楽ってところかな。
0948デフォルトの名無しさん
2011/11/07(月) 23:24:29.32動的とか関係ないんじゃ?
0949デフォルトの名無しさん
2011/11/07(月) 23:45:50.70特定しやすいのは事実。
0950デフォルトの名無しさん
2011/11/08(火) 08:08:00.31http://www.eclipse.org/Xtext/
0951デフォルトの名無しさん
2011/11/08(火) 10:35:27.310952デフォルトの名無しさん
2011/11/08(火) 10:41:03.63静的型付け言語の場合、それを防げる。
0953デフォルトの名無しさん
2011/11/08(火) 10:43:02.180954デフォルトの名無しさん
2011/11/08(火) 10:48:53.21http://www.artima.com/scalazine/articles/twitter_on_scala.html
Alex Payne: I’d definitely want to hammer home what Steve said about typing.
As our system has grown, a lot of the logic in our Ruby system sort of replicates a type system, either in our unit tests or as validations on models.
I think it may just be a property of large systems in dynamic languages, that eventually you end up rewriting your own type system, and you sort of do it badly.
You’re checking for null values all over the place.
There’s lots of calls to Ruby’s kind_of? method, which asks, “Is this a kind of User object? Because that’s what we’re expecting.
If we don’t get that, this is going to explode.”
It is a shame to have to write all that when there is a solution that has existed in the world of programming languages for decades now.
0955デフォルトの名無しさん
2011/11/08(火) 11:00:31.26どうしても単相型の関数を書きたきゃ
@typecheck
def f(x:int, y:int) -> int: return x + y
みたいなデコレータを定義して使えばいいだけの話
0956デフォルトの名無しさん
2011/11/08(火) 11:04:54.34静的型言語の評価を落とす為にわざとやってるんだろ?
0957デフォルトの名無しさん
2011/11/08(火) 11:18:17.30つまり、引数や戻り値に型を指定するのが効率的ということだな。
0958デフォルトの名無しさん
2011/11/08(火) 11:18:58.96動的の場合 わからなければすぐにREPLで関数をテストするのが鉄則だよ。
静的の感覚で動的を使えば、使いづらいのは当然だから、使うときにそれぞれ
の理にかなった方法でやっていくことをおすすめするな。要するに郷に入れば
郷に従えだ。それができない奴って、ソースを見ればすぐにわかる。
また、引数は方がわかるようにしておくのも普通に行われる。
0959デフォルトの名無しさん
2011/11/08(火) 11:22:39.88単相的な関数を書くならな
お前の書く関数が単相的なものばかりなら
そりゃ静的型言語のほうが向いているだろうよ
0960デフォルトの名無しさん
2011/11/08(火) 11:27:29.92しかし、普通に交通量が多くて、F1レーサーのような運転スキルがない普通のドライバーが安全に運転しようと思えば、信号機もウィンカーも必須。
0961デフォルトの名無しさん
2011/11/08(火) 12:27:21.67ウィンカーも着脱可能にすれば修理しやすい。
故障しないから修理もしなくていいと想定すると理論上は非常に効率が良いんだが
想定が外れると非常に面倒なことになる。
0962デフォルトの名無しさん
2011/11/08(火) 13:57:44.98車検があればそんなことはない。
0963デフォルトの名無しさん
2011/11/08(火) 14:07:51.280964デフォルトの名無しさん
2011/11/08(火) 17:43:21.30オレ、gofer, sml, Haskellと15年ほど関数型使ってきて、
仕事でも両手に余る数のコードを納品してきたが、
型推論での型デバッグはやりたくないね。
つうか、お前、関数型言語本当に使ってんのか?
0965デフォルトの名無しさん
2011/11/08(火) 17:52:34.56型宣言してないコードが絡んだ型エラー。
マジで涙が出てくるぞw
0966デフォルトの名無しさん
2011/11/08(火) 18:02:01.66OCamlを使ってるけど、インクリメンタルビルドと型情報を表示できる
エディタの登場で状況が変わったよ
型注釈を書かないときに、実際ミスったところと遠い場所で
型エラーが出るとマジで気が遠くなるが、今は間違ったら直ぐ分かるから
そういうケースが無くなった
(自分の書いた関数の型をチェックしないとか言うなよ?)
あと、当然ながら.mliは書く(だから>>965の問題は杞憂)
0967デフォルトの名無しさん
2011/11/08(火) 18:23:05.09型だけ先に書いておいて中身はとりあえず assert false にしておく
こともあるけどね
0968デフォルトの名無しさん
2011/11/08(火) 21:37:21.390969デフォルトの名無しさん
2011/11/08(火) 22:20:35.41それは動的型、静的型の問題ではなく、
インタプリタ言語とコンパイラ言語の話になるのでは?
0970デフォルトの名無しさん
2011/11/08(火) 22:56:22.57動的コンパイラ(=/ インタプリタ)も含まれる。
静的もREPLはインタプリタとして持ってる言語はあるけど、
静的のREPLは言語によって使い物にならんか、
使い勝手がいまいちなことが多いような印象があるな。
IDEは個人的には思考のリズムが合わないので余り好きで
はないな。CUIだけで操作ができるように覚えればいいん
だろうga。
>>966
よかったらOcamlでの開発の進め方を書いてみてよ。多分、ここの
多くの人は頭の中の言語としてしか知らないだろうし、俺もほとん
ど知らん。^^; 世の中にオカムラーが増えるかもな。
0971デフォルトの名無しさん
2011/11/08(火) 23:25:22.14次スレが立った。どうせおんなじようなネタになるしここでいいよ。
しかし、関数型に粘着アンチするのってどんな生き物なんだろうか?
0972デフォルトの名無しさん
2011/11/08(火) 23:46:14.27否定する理由を見てみたい。
0973デフォルトの名無しさん
2011/11/09(水) 00:02:24.54Java vs PHP みたいな話じゃねーの?
0974デフォルトの名無しさん
2011/11/09(水) 00:11:01.77開発のための道具だという認識が甘いんだよな。
IDEを使ったコーディングテクニックというものを知らない。
0975デフォルトの名無しさん
2011/11/09(水) 00:20:43.51画面数に比例する規模でひたすらゴリゴリ書くだけみたいなシステム
これは LOC がどうだろうと動的型付け言語の方が早い
裏側のバッチやらでロジックが複雑になってくると型が欲しくなる
0976デフォルトの名無しさん
2011/11/09(水) 00:39:04.02あんまり意識してないな。
マウスを使うのがだいたい苦痛だから^^;
0977デフォルトの名無しさん
2011/11/09(水) 00:47:05.93関数を書く → セーブする → 裏で自動でコンパイルが走る → ここでエラーがあれば直す
→ エラーが無ければ関数の型を確認 → 型が予想と違えば直す → 最初に戻る
基本的に上のサイクルをリズムを崩さず書く(>>958が指摘するようにREPLも良く使う)
で、動くモジュールが出来たら、ocamlc -i で.mliファイルの雛形
(Cでいうところのヘッダーファイル。ソースファイルは.ml)を生成し、
これを修正して(例:非公開関数の型情報を消す)コメントを追加して完成
だから最終的には型情報付きのコードが出来上がる
なお、書くときはvim、コードを腰据えて読むときはEclipseを使ってる
(他人のコードを読むときのビジュアルデバッガの便利さはヤバい)
0978デフォルトの名無しさん
2011/11/09(水) 01:11:01.24他人が作った関数の戻り値・・・のオブジェクトが
どんなメソッドを持っているかってどうやって調べるの?
わざわざファイル探すの?
0979デフォルトの名無しさん
2011/11/09(水) 05:11:53.34それぞれのLLにドキュメンテーションのツールがあるから、それを使う
RubyならRDocで、これはインストール済Gemsパッケージのメソッド情報等を自動的に生成する
0980デフォルトの名無しさん
2011/11/09(水) 06:52:22.06IDEを使う人って、他人が作る部分が完成するまで自分は何もせず待機してるの?
0981デフォルトの名無しさん
2011/11/09(水) 08:41:06.58あー、やっぱりだw
他人が作った関数戻り値ってのは、
そんなドキュメントがちゃんと用意されてるものじゃなくて
開発中で仕様が固まってるわけでもないやつとか
プライベートメソッドとか、そいういうちゃんと準備されたものじゃないもののことだよ。
えと、それなりの人数で開発していれば、普通にある話だよね?
どうもIDE使ってない人って、自分以外はすべて公開された汎用ライブラリって
小さなプロジェクトしかやってないと思っていたが、その通りのレスを有難うw
>>980
んなもんスタブでも作ればいいだけじゃんw
0982デフォルトの名無しさん
2011/11/09(水) 10:21:00.090983デフォルトの名無しさん
2011/11/09(水) 10:28:40.360984デフォルトの名無しさん
2011/11/09(水) 10:40:37.29可能な言語がいくつかあるよ。全てではないけど、強力なREPLをもってる
と楽なんだよな。
0985デフォルトの名無しさん
2011/11/09(水) 10:56:44.76分かったとして、それを何に使うの?
0986デフォルトの名無しさん
2011/11/09(水) 11:04:07.87TX! Ocamlでもeclipsが使えるんだ。知らなかった。関数型とvimってよくある
よね。機動力があるからかな。scakaでも本掲載とのアンケート結果を見ると
vim人気高いみたいだし。
haskellのほうはghciから:eはデフォルトでvimになってるな。
0987979
2011/11/09(水) 11:14:08.03>えと、それなりの人数で開発していれば、普通にある話だよね?
ンっ、>>981の世界ではそれが普通なの?
少なくとも自分が過去に関わったプロジェクトでは、
(言語とは無関係に)コンポーネントの公開インターフェイスや
共通で使用される(=内部ライブラリである)モジュール/クラスは、
あらかじめ(暫定案でもいいから)固めて文書化しておくのが普通(常識)
そうしないとコンポーネントごと複数人数で分担する、あるいは
複数の会社で開発を分担して最終的に統合してプロダクトとするような
規模のプロジェクトでは、仕様変更に伴う大混乱が「間違いなく」発生する
それとも最近のIDEというのは、この辺りの仕様変更まで自動的に追従してくれるのかな?
0988デフォルトの名無しさん
2011/11/09(水) 11:42:04.94大人数での開発では静的型付け言語の方が安定感がある。
大規模開発では平均スキルレベルの維持が難しい(全員がエキスパートじゃコストがえらいことに!)から、初心者レベルの単純ミスを指摘してくれる機能は外せない。
尤も、顧客要求は開発規模(人月、予算、コード量)スリム化、でも機能盛りだくさんの方向だから悩ましい。
0989デフォルトの名無しさん
2011/11/09(水) 15:15:40.99むしろマイナスでござる
0990デフォルトの名無しさん
2011/11/09(水) 15:50:15.390991979
2011/11/09(水) 15:55:48.42>>>981で結論出てるな。
意味不明だ
このスレで言うIDEとは、Eclipse/VisualStudio/XCode/Emacsあたりを指していると思うけど、
これらはどれも個人レベルのコード生産性を向上するのに役立つツールかもしれない
しかし、数十人以上の不均質な体制が組まれる現実の大規模開発プロジェクトにとっては
評価の対象とはならない(IDEと開発規模とは無関係)
# 評価対象にならないというだけで、IDEそのものを批判している訳ではないので誤解せぬよう
# IDEを使う/使わないは個人レベル、あるいはプロジェクト単位で判断すればいい
>>978,981,988 の主張は、現実の大規模開発を経験したことの無いド素人の発想でしかない
0992988
2011/11/09(水) 16:20:54.77ああ、言葉足らずだった、すまん。
981の前半についてのコメントだった。
IDE使用有無との関連は、ここでは考えていない。
言いたかったのは、コスト・スキルバランスを考えると、要員の単純ミスが無視できないから、静的チェックが欠かせない、って事。
それはスキルの問題だろと言われればそれまでなんだが、誰かも書いていたように、エキスパート揃いだったらそもそも、動的・静的のどっちで統一するかなんて問題は小さくなるしな。
0993デフォルトの名無しさん
2011/11/09(水) 16:27:22.32集中力の欠如は大敵だわ。ケアレスミスは誰だって起こるしなぁ。
0994デフォルトの名無しさん
2011/11/09(水) 16:33:35.16型はコード解析しやすくするために必要
コード解析しやすくなると開発ツールの実装が楽になる
IDEの機能はデフォで充実、自分で拡張したり新規に作るのも楽
充実した開発環境は開発効率を向上させる
誰も反論しないから定理として扱っていいと思ったのに
いまさら反論されても困る
0995デフォルトの名無しさん
2011/11/09(水) 17:03:16.54必要なリファレンスを自動的に表示したり
単体で実行したり
その辺りまでやるべきだよな
ホットキーすらも押す必要がない
カーソル位置から解析できる全ての情報がそこに表示されるべき
そのために解析範囲を大きくしてはならない
解析範囲を小さくしてもそのブロックに意味がなければならない
言語仕様は開発ツールの動作を妨げてはならない
こう考えたから
型は必須でなければならないという結論になった
動的静的なんてクソどうでもいい差
0996979
2011/11/09(水) 17:08:59.80了解
>>994
だから、個人レベルの戦闘能力を高める武器としてのIDEを否定/反論する気は全く無い
指摘したのは、
・IDEと開発規模とは無関係であり、
・IDEは大規模開発に関わる問題を解決するツールでは無く、
・>>981はド素人
だということ
0997デフォルトの名無しさん
2011/11/09(水) 17:22:25.56知性の欠片もなく
経験や立場を自慢して主観を押し付けてレッテル貼って
それで他人と肩を並べたつもりになってるくずめ
おまえなんてあばばばば
0998デフォルトの名無しさん
2011/11/09(水) 17:29:33.14全ての多相性を禁止にしろよ
どのメソッドが呼ばれるか静的に決まるぞ
0999デフォルトの名無しさん
2011/11/09(水) 17:41:05.08静的解析しやすくIDEが作りやすい言語になるだろうが、そんな言語使いたくねぇw
1000デフォルトの名無しさん
2011/11/09(水) 17:48:43.2810011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。