静的型付け言語の潜在開発生産性は今の100倍 ×5

■ このスレッドは過去ログ倉庫に格納されています
2013/11/24(日) 15:06:08.63
int a = 1;
a = "a"; ← エラーになる。
型がない言語ではできない芸当です。(爆笑)


人間がやっていたことを、コンピュータにやらせる。
これが生産性を上げる最大の方法。
コンピュータは間違わない、同じ事を何度も高速に行える。

その為に、コンピュータがコードの意味を正確に
認識できる方法が必要。実行しないとわからないことは
コンピュータは認識できない。

すなわち静的型付け言語であれば、実行しなくてもわかるので
コンピュータが理解できる。そうすれば様々な
コンピュータの高度な情報支援が得られる。

コンピュータのバックアップを受け、人間の生産性は
限りなく向上する。

前スレ
静的型付け言語の潜在開発生産性は今の100倍 ×4
http://toro.2ch.net/test/read.cgi/tech/1383572174/
2013/11/25(月) 02:53:43.18
JSはCの2倍速いこともあるが
まあ、ここは10倍速いといっておこう
2013/11/25(月) 02:54:18.88
>>144
お前が必死なのがよくわかった。
2013/11/25(月) 02:57:02.26
>>144
反論してた方がむしろ静的厨というオチだけどな
2013/11/25(月) 02:58:03.82
(^q^)アウアウアー
2013/11/25(月) 02:58:05.28
結局テストのことを考えたら静的のほうがいいべ
動的や面倒でたまらん。
そのくせ効果が少ない。
2013/11/25(月) 03:00:27.73
動的言語だと実装は仕様変更に強いがテストは仕様変更に弱い?

というかテストまで仕様変更に寛容だとテストとしての目的を果たさないと言うことか。
2013/11/25(月) 03:02:59.94
静的と動的の間の言語が最強
2013/11/25(月) 03:09:41.81
モックにテストを書こうと思うのですが
どうやって書けばいいのでしょうか?
2013/11/25(月) 03:10:41.98
動的言語が仕様変更に強いというのは
幻想だと思うよ。
2013/11/25(月) 03:10:42.26
>>151
オプショナルな型付けで場面に応じて静的型検証を強制できる言語が最強ということだな。

なんだGroovyじゃないか。
2013/11/25(月) 03:14:18.05
>>152
モックを使ったテストの意味を理解してないなら依存性バリバリでも
愚直にテストコード書いた方がまし

使い方という意味ならいくらでもドキュメント出てくるでしょう
2013/11/25(月) 03:14:43.77
テスト志向の徹底
これがすべて
まずデバッガを排除するべし
デバッガを見つけたら廃棄
それがソフトであってもハードであっても人間であっても
デバッガと名のつくものはすべて廃棄
2013/11/25(月) 03:15:45.63
そしてGDBに戦いを挑む>>156だった。

最終話 デバッガには勝てなかったよ
2013/11/25(月) 03:17:17.14
>>152
モックに対してテストを書くと、

モックのテストと
実物のテストの二つに分かれてしまう。
それは避けないといけない。

だからテストコードにはクラス名を渡せるように作る。
2013/11/25(月) 03:17:35.61
インド系アメリカ人のデバッガさんはどうしましょう
2013/11/25(月) 03:18:40.27
第一話 GNU帝国の進撃の巨人
2013/11/25(月) 03:18:58.41
モックを使ったテストでは
テスト対象コードとそのテストの他に
モックのテストが必要になる。
2013/11/25(月) 03:19:40.14
>>159
当然廃棄
透明ゴミ袋でお願いします
生ごみだから
163デフォルトの名無しさん
垢版 |
2013/11/25(月) 03:21:14.69
テストはバグを見つけるためのものであり
デバッガとは見つけたバグを修正するもの。

この違いがわかっているのなら、
テストはデバッガの代わりにならないというのもわかるはず。
2013/11/25(月) 03:22:00.08
やべえ
眠くならない
まじやべえ
月曜日寝ないと一週間眠れないパターンに入る
これはやべえ
2013/11/25(月) 03:24:19.34
俺は深夜メンテナンスがあるから
逆に起きてないといかんのだよ。
寝れないなら俺に付き合えw
2013/11/25(月) 03:38:09.75
ウホ?
2013/11/25(月) 15:10:38.86
動的言語勢としてもJSerは隔離したほうがいいと思った
やつら純粋に頭が悪すぎる
2013/11/25(月) 15:17:41.51
>>144
> 結局動的でテスト志向に徹するのが最良

どうせテストを書くのなら、最初からコードに一部埋め込んでおけば漏れもないし確実だろうが。
動的言語信者の言い分をつきつめると、結局静的言語に戻ってくる
やつら計算機科学の成果とかまるっきり無視してるからなw

ま、確かにこれからは動的言語だって時代はあったよな。このグラフの2005年くらいまでか?
http://www.tiobe.com/content/paperinfo/tpci/images/history_paradigm_type%20system.png
特に阿呆なJSerども、俺らイケてるって調子に乗ってな。

でも今は最早そんなトレンドではないのでは明らか。揺り戻しが発生してるでしょ。





失敗したんだよお前ら。
2013/11/25(月) 19:52:59.61
型は自転車でいえば補助輪のようなもの
プログラム初心者は型がないとプログラムを書けない
一度、型なしでプログラムを書けるようになったら
もう型なんて必要ない
2013/11/25(月) 20:06:10.43
保育園児VS小学生 ktkr
2013/11/25(月) 20:34:02.76
>>169
あほ。
型付け制限はどうみても人間以外の機械側の都合。
2013/11/25(月) 20:37:57.99
171だが。
>>1をいま読んだが。
静的型付け言語でなくともオプション指定で、代入で型が変更された時に警告やエラーを出すようにしたら発見可能だろ。
これは、静的型付け言語かどうかとは関係ないな。
2013/11/25(月) 20:38:03.76
型はヘルメットとも言い換えられる
自称上級者が「鬱陶しいから」という理由で装備せずに重大な事故を引き起こす
2013/11/25(月) 21:19:15.41
>>172
int a = 1;
a = foo(); // fooの戻り値は文字列

この場合に警告出してくれる動的型言語を紹介してください
2013/11/25(月) 21:21:18.17
強い静的型付け
176デフォルトの名無しさん
垢版 |
2013/11/25(月) 22:10:18.58
動的がーとか言ってるやつとブレーキのない俺かっけーと言ってるピスト野郎とかぶるんだが気のせい?
177デフォルトの名無しさん
垢版 |
2013/11/25(月) 22:23:59.92
入学したら補助輪を外すのは世界の常識。
いつまでも補助輪つけてたらみっともないですよ?
ゆうくんも今日からお兄ちゃんなんだから補助輪外さないとね!
2013/11/25(月) 22:54:04.02
>>172
> 静的型付け言語でなくともオプション指定で、代入で型が変更された時に警告やエラーを出すようにしたら発見可能だろ。

エラーだらけになるだろ、バカすぎ。
179デフォルトの名無しさん
垢版 |
2013/11/25(月) 23:09:15.01
デバッガを使う無能が一向に減らないのは静的のせいだったのか。
なるほどなるほど。
2013/11/25(月) 23:16:35.47
なんでデバッガを嫌うの?

コボラーと同じ臭がするね。
2013/11/25(月) 23:20:16.00
テストは予防接種
デバッガは応急措置
2013/11/25(月) 23:22:19.96
インタプリタしか使ったことがなければデバッガが無意味に思えても仕方ない
2013/11/25(月) 23:25:19.98
>>181
なるほど!

デバッガを嫌っている人は
デバッガを勘違いしているということがわかった。

デバッガはその名の通り、バグを修正するもの。
テストで見つかったバグ。そのバグを直すまでに使う道具だ。
2013/11/25(月) 23:28:43.02
デバッガで応急処置をするとかよくわからんわw
応急処置をするにしても、テキストエディタでコード書くことで
応急処置するんだろ。デバッガで応急処置?どうやって?w
2013/11/25(月) 23:35:33.58
予防接種の方はよくわかるのかよw
2013/11/25(月) 23:57:58.45
ごく小規模なプログラム、個人での開発、保守不要の作り捨てのプログラムの場合は動的な方がよい
187デフォルトの名無しさん
垢版 |
2013/11/26(火) 00:03:17.45
ネットワーク分散処理、アジャイル、ハイパフォーマンスの場合は動的のほうが良い。
初心者の学習用途は静的のほうが簡単。
2013/11/26(火) 00:06:01.55
>>187のレスには突込みどころがいくつもあるけど突っ込みません
2013/11/26(火) 00:24:24.78
突っ込みどころが多すぎて突っ込ませない手法は教祖がよくつかう手法。
190デフォルトの名無しさん
垢版 |
2013/11/26(火) 00:44:53.86
突っ込んでくれないならもう書き込みません!
2013/11/26(火) 00:57:59.17
>>187
JSはCの10倍速くて初心者にも優しいよ
2013/11/26(火) 01:05:19.80
さすがに10倍はない。
大きすぎてネタとばれるレベルw
193デフォルトの名無しさん
垢版 |
2013/11/26(火) 01:46:37.38
【動的言語の薦め】

Perlが最初MBAの学生によって作られたことはよく知られています。
欧米の金融工学の教科書には問題をPerlで検証しなさいと良く書かれています。
実際、マンハッタンエリートの机には必ずPerlのパッケージが置いてあります。
金融、経営、経済といった分野ではPerlが必要不可欠な個人ツールとなっているのです。

最適化分析ツールとして容易でありながら絶大な威力を持つソルバー、
計算結果を視覚化するグラフツール、これらの操作を簡単に記録して再利用する
マクロの記録など必要なものはすべてそろっています。

彼らはマンハッタンのエリートたちはプログラミングの専門家ではありません。
はたして、静的言語でこのようなことが可能だったでしょうか?
ひとえに動的言語のパウアーによるものだったのです。
194デフォルトの名無しさん
垢版 |
2013/11/26(火) 01:53:31.35
Perlの重要な機能であるウェブクエリも忘れてはいけません。
これは、定期的に更新されるウェブページの表から動的に情報を取得する
容易な方法です。
実際にウェブページを閲覧しながら必要な表を選択するだけで情報を
取り込めるのです。
Perlのシートを開くたびに更新された情報を取得することも可能です。
もちろん、取得した情報の分析や資格化はPerlの得意とするところです。
マンハッタンのエリートたちはこういったツールを使いこなし、経営に
役立てているのです。

繰り返しになりますが、静的言語でこのようなことが実現したでしょうか?
2013/11/26(火) 01:57:38.03
>>194
俺はjavaでやってるぞw
196デフォルトの名無しさん
垢版 |
2013/11/26(火) 02:08:50.96
日本でも投資顧問会社が「弊社では20世紀より伝わる信頼と実績のPerl
プログラムによってお客様の利益を保証します」ってやってるね。
2013/11/26(火) 04:26:43.22
そういう特定分野で使われている言語はその分野の実績のあるソフトウェアスタックが揃っていて
ユーザが多くノウハウも蓄積しているから使われているのであって動的静的は案外関係ないと思う。

今仕事でやってるデータインテンシィブな分散処理の分野ではJava強いけど別にこれを「動的言語
でこのようなことが実現したでしょうか? 」とか言う気にはあまりならん。
基本的にはHadoopやLuceneがJavaで書かれているから、その上に乗っかるシステムも素直にJavaで
書かれているという事情が大きい。でも現実問題としてこの点は言語が動的静的云々の差などより
よほど大きいわけで。

「小規模なプログラム、個人での開発、保守不要の作り捨てのプログラムの場合は動的な方がよい」
ということでは無くて、単に効率考えずに言語第一で選択できる場面なんてその程度しか無いだけ。
2013/11/26(火) 06:09:57.00
>>196
金融商品取引法は、損失負担の約束や利益保証を禁止しており、これらを伴う勧誘も当然に禁止しています。
2013/11/26(火) 06:19:09.85
>>176
君、よく周囲の人達から「きみ、頭悪いね」と言われてるだろ。
2013/11/26(火) 06:20:59.47
>>195
劣化コピーでドヤるのって楽しい?
2013/11/26(火) 06:56:30.22
>>196
これはひどい
2013/11/26(火) 07:06:42.04
>>196
その利益保証しているという投資顧問の社名を教えてくれ
2013/11/26(火) 08:51:33.31
ちなみに>>193は全部つくり話ですw
204デフォルトの名無しさん
垢版 |
2013/11/26(火) 09:40:40.95
>>199
具体的な反論なくただ堕とすだけの奴は無能だってじっちゃが言ってた(´・ω・`)
2013/11/26(火) 10:39:11.85
>>204 つまり、おまえは無能ってことだなw
206デフォルトの名無しさん
垢版 |
2013/11/26(火) 10:50:15.40
>>205
ウンウン、そういう風に具体的なこと言えないで堕とすだけなんだねー。わかります(´・ω・`)
2013/11/26(火) 11:31:18.48
>>206
205は204に対する具体的な反論になっていることも理解できないのか
なんて可哀想なバカなんだろうw
2013/11/26(火) 11:32:29.63
>>204
そんな風に、具体的な反論もできずにじっちゃが言ってたとかほざいている
無能な孫をみて、さぞやじっちゃは悲しんでいるだろうよ

どうしてこんなバカな孫ができてしまったのかってねw
209デフォルトの名無しさん
垢版 |
2013/11/26(火) 12:03:36.79
>>207-208
妄想が止まらないJSerか?涙拭けよwww
2013/11/26(火) 16:23:19.76
>>209 あいかわらず妄想の塊だなw お大事に。ww
211デフォルトの名無しさん
垢版 |
2013/11/26(火) 19:05:03.75
>>203
作り話じゃありません。
ExcelをPerlに変えてみただけです。
212デフォルトの名無しさん
垢版 |
2013/11/26(火) 19:31:05.12
>>210
いやいや妄想力の強さではJSerにはかないませんよw
213デフォルトの名無しさん
垢版 |
2013/11/26(火) 20:33:15.36
負けを認めた瞬間から君は負け犬になったのです。
一生JSにかなわないのです。
2013/11/26(火) 20:42:13.76
ま、負けましたブヒー
2013/11/26(火) 21:51:26.20
板住民の総意としてJS最強を認めたいと思います
チャンピオン JSer には地球代表として銀河系遠征へ旅立っていただく予定です
2013/11/26(火) 23:04:58.95
>>215
おまえがJSのアンチだってことは
皆気づいていると思うよ。
いくら言い訳してもね。
217デフォルトの名無しさん
垢版 |
2013/11/26(火) 23:45:45.86
>>215
あんちだったん?
Cの二倍速いのになんで?
2013/11/26(火) 23:50:25.33
宇宙人からメッセージが一件とどいてます。

(^q^)アウアウアー
2013/11/27(水) 00:02:23.10
>>217
2倍速いっていうのはデマだよ。
ごくごく一部の例外的事象を
大げさに言ってるだけ。
220デフォルトの名無しさん
垢版 |
2013/11/27(水) 00:09:42.19
デマじゃないよ。
ほんとに速いよ。
やってみたらすぐわかるのになんでやらないの?
2013/11/27(水) 00:11:36.30
いや、簡単なサンプル作ったけど
速くならなかった。

速くなるというサンプルを書いてみてくれ。
速くなるという証拠がないんだ。
どうしようもないじゃないか?w
222デフォルトの名無しさん
垢版 |
2013/11/27(水) 00:11:50.78
JSの良いところは速度だけではありません。
その高度に統合された美しい理論体系が優れているのです。
神のデザインとすら言われています。
2013/11/27(水) 00:17:02.57
そういうのは要らん
速くなるサンプルをくれ
2013/11/27(水) 00:32:54.01
早いのは単にcのコードが悪くて、
jsの最適化の方が優れてただけだろ?
ブラウザ戦争の産物だな
clangみたいに最適化が進めば差はたいしてなくなる
2013/11/27(水) 00:36:33.30
JSが美しいとか言うやつの美的感覚ってw
それにJSがCより早いって(爆笑)比較コードさらしてね
まともなコードで比較したらそんなことあり得ないから
2013/11/27(水) 00:36:36.13
ただの誤訳だって
227デフォルトの名無しさん
垢版 |
2013/11/27(水) 01:53:09.78
【最も美しい言語 - 01スクリプト言語】

・0と1、二つの文字だけで書くことができる新しい種類の言語です
・現在の実装はトランスレータです
・コンパイラ、実行環境はお好きなものを選べます

【現在の実装】
・0と1だけから成り立つ入力文字列より8バイト消費し、それぞれ0のビット
 1のビットとして一バイトにおさめます
・選択されたコンパイラや実行環境の入力としてバイトを送ります
・文字列の終端に達していない場合、最初のステップに戻り、それ以外の場合
 終了します
2013/11/27(水) 07:00:45.74
wとWで書けるのもあるしな
2013/11/27(水) 07:04:02.82
(^q^)アウウウアウアアアウアウウア-
2013/11/27(水) 09:25:08.74
↓美しい言語家
231デフォルトの名無しさん
垢版 |
2013/11/27(水) 10:59:28.39
>>220
そんな素晴らしいものでなんで全てのプラットホームで使えるようになってないのよ。お前ら信者の布教具合がたるんでるんじゃねえの?
2013/11/27(水) 11:10:22.91
JavaScriptの関数読んだけど難しすぎてわけがわからん。
誰かこの関数の使い方を教えてくれないか?
どういう返り値を期待してどういう引数を渡せばいいのか。
https://github.com/jquery/jquery/blob/1.8-stable/src/core.js#L772
2013/11/27(水) 11:24:57.45
>>232
糞JSerが頑なに正解だと言っていたbulkの再代入が直してあるな
まあ当然だよなあ
2013/11/27(水) 11:57:12.38
型システムの起源って何の言語?
2013/11/27(水) 12:08:11.75
型システムの定義によって答えは変わる
2013/11/27(水) 15:37:11.26
だが静的脳の達人は質問者の追加入力を待ってノロノロ答えを計算するなどということはない
2013/11/27(水) 15:42:48.31
>>234
データ型という概念そのものは、高級言語の登場に伴って自然発生的に生まれた
たとえば Fortran には整数型/実数型といった単純型や配列という複合型がある
また PL/I ではレコードやポインタといったデータ型が追加され、
Pascal でデータ型の体系が整理された後、モジュールや抽象データ型を経て
現在のオブジェクト指向が主流な現在に到る
したがって、型システムの起源として言語を特定する事に意味は無い

この自然発生的な型システムに遅れて、形式的な型システムが誕生した
そしてこれが最初に実装された言語が、ある定理証明器の記述言語として設計された ML になる
MLはその後、汎用的なプログラミング言語として開発が世界中で活発化し、
Standard ML(SML) と Objective-Caml(OCaml) に分かれて現在に到る
また ML は純粋関数型言語である Miranda にも強い影響与え、その後継が現在の Haskell
言い換えると、形式的な型システムの起源は ML と言える
ML については、Wikipedia にも簡単な解説があるので、そちらも参照のこと
2013/11/27(水) 16:01:41.85
このスレ勉強になるわ
2013/11/27(水) 16:16:31.63
見事だ
2013/11/27(水) 16:46:05.27
自演臭すぎる
241デフォルトの名無しさん
垢版 |
2013/11/27(水) 18:36:30.31
JSはCの二倍速い。
2013/11/27(水) 19:40:41.78
そんなわけあるか。CのがJSの二倍遅い。
243デフォルトの名無しさん
垢版 |
2013/11/27(水) 19:59:49.13
JSも速いけど今の流行はPOMですよ。
2013/11/28(木) 01:36:51.13
でもさ、やっぱりさ、Java書いた後、PHPでコード書くと
この糞言語って思わない??
少なくともこの比較だったらやっぱりJavaの方が色々楽だよね?

よく使うので言うとMapあるし、型エラー、メソッド有る無しのエラー、
変数定義のエラーなどなどEclipseの恩恵含めていいとこあるし
テストもクラス内の特定メソッド指定して実行できるし、
カバレッジ出るのも早いし、メトリクス測定も早いし

PHPでも出来るもの、代用品はもちろんあるけど面倒いし遅いし
曖昧な関数多いし

PHPでやるメリットってお遊びアプリ作る程度に
留めないと無いような気もしてくる
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況