動的言語で大規模開発

■ このスレッドは過去ログ倉庫に格納されています
1uy
垢版 |
2012/07/24(火) 09:10:42.04
たててみた
2uy
垢版 |
2012/07/24(火) 09:14:05.25
問題は解決した
結局、実行時にしか実行結果が分からないとしても
「信頼できるコード」は徐々に増えていく
それは予想以上に上手くいき始めた
俺は二度と静的言語を使う事はないだろう
2012/07/24(火) 09:15:00.16
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所
4デフォルトの名無しさん
垢版 |
2012/07/24(火) 10:57:46.72
そのコピペ飽きた
2012/07/24(火) 11:54:29.79
イジメ自殺が社会問題となっている。新聞でもテレビでも識者と称する恥知らずたちが、おためごかしの助言を垂れ流して小銭を稼いでいる。
イジメに苦しむ少年少女よ、あんなものが何の役にも立たないことは、君たち自身が一番良く知っている。
唯一最良のイジメ対処法は報復に決まっているではないか。

実はイジメ自殺は何年かごとに社会問題となり、そのたびに真実の声が良識という名の愚論によって圧殺されてきたのだ。
十一年前にもイジメ自殺が相次ぎ「少年ジャンプ」が悲痛な叫びを特集連載した。
それをまとめた『いじめレポート』(集英社)にこんな声がある。
「徹底的に体を鍛えた。復讐(ふくしゅう)のために…。やられる前にやれ!」(A男)。
A君は拳法、柔道で「歩く凶器」となり、イジメを粉砕した。
睡眠薬自殺未遂のC子さんは、死を思う気持ちよりも「憎しみの方が強くなった」「私もガンガン殴り返す」「女でもやるときはやるんだ!」。
別の女児もこう言う。「どうしても死ぬっていうんなら、いじめた奴に復讐してからにしなよ」

学校では報復・復讐は道徳的な悪だと教える。しかし、それは嘘だ。人間が本来的に持っている復讐権を近代国家が独占したに過ぎない。
大学で法制史を学べばすぐわかる。復讐は道徳的には正しいのだ。現に、ロシヤに抑圧され続けたチェチェン人は果敢に復讐をしているではないか。

被害者が自ら死を選ぶなんてバカなことがあるか。死ぬべきは加害者の方だ。いじめられている諸君、自殺するぐらいなら復讐せよ。
死刑にはならないぞ。少年法が君たちを守ってくれるから。

呉智英
6デフォルトの名無しさん
垢版 |
2012/07/24(火) 18:55:17.05
動的言語で大規模開発は可能

以上
2012/07/24(火) 20:04:33.83
【スポーツ】「五輪期間中はブログをやめて」JOCが東原亜希さんに要請★2
http://ikura.2ch.net/test/read.cgi/curry/1246361020/
2012/07/24(火) 20:07:03.66
あるのなら例をあげろよ。

俺が見たのはPython & Djangoで書いた社内用メーリングリストサーバ。
Webアプリで利用者がML管理。全部で1万行くらいあった。
納入業者が作ったみたい。
9デフォルトの名無しさん
垢版 |
2012/07/24(火) 22:26:26.07
いくらでもあるのに見つけられないってバカなのか
10デフォルトの名無しさん
垢版 |
2012/07/24(火) 22:59:20.68
1万って大規模じゃないだおr
2012/07/24(火) 23:00:34.94
もっと絞らんと、obj-cなんかも入ってきて切りがないでしょうに
2012/07/24(火) 23:18:45.95
ばーか
2012/07/24(火) 23:20:31.92
大規模開発は何を意味してるのかな
コード量かな
人数かな
人数多いとダメじゃないかな
2012/07/24(火) 23:37:16.89
人数多いのはクソプロジェクトしかないから却下。
2012/07/24(火) 23:43:45.63
win8はいつのまにか不可解なメトロを組み込むことになってしまった
動的言語じゃなくても大規模開発は難しい
2012/07/25(水) 00:57:09.50
死ね
2012/07/25(水) 01:21:12.37
1万行って去年俺一人で趣味で書いた JavaScript の量じゃねえか。
もう二度とやらんと誓ったけど。
動的言語は砂上に楼閣建ててる感がヤバイわ。GWT なり Haxe なり使えよ。
2012/07/25(水) 01:25:38.55
Browser Quest を見たパンピーどもの反応
→HTML5 スゲー!!JavaScript スゲー!! マンセーマンセーマンセー!

ソースコードまできちんと読んだ俺の反応
→これを全世界のプログラマにやれというのか(怒怒怒怒怒怒怒怒怒怒怒
 今すぐ滅べよ JavaScript(激怒
19uy
垢版 |
2012/07/25(水) 02:43:50.85
「信頼できるコード」は徐々に増えていく
一見そう思えたが、修正しようとした時に問題が起き始めた。

影響範囲がわからない。

テストコードがあるから、実行すればおかしくなったのはわかるのだが、
それを正しくするには、どこを修正すればいいかがわからない。

時間がかかってしまう。

そしてテストコードは動いたが、今度はこれで本当に問題ないか
不安になってきた。

テストは不具合があることは教えてくれるが、
不具合がないことは教えてくれない。

果たして俺は、完璧なテストを書いているのだろうか?
20uy
垢版 |
2012/07/25(水) 02:55:10.25
コードはインターフェースと実装の2つにわかれるんだよ。

実装の修正ってのはテストが簡単。
インターフェースが変わらないから、
実装は関数の中身を変えればいいだけ。
テストコードを変える必要はない。


だけど、インターフェースの修正ってのは、
関数の外側、呼び出し側を修正する必要があるから
影響範囲が広くなる。そしてテストコードまでも変更する必要がある。

インターフェースの修正に弱いのが
動的型付け言語なわけ。
21uy
垢版 |
2012/07/25(水) 03:36:50.02
>>19-20
死ね


>>17
冷静に考えてみ
その1万行をかくときに
「動的言語で書かれているヘッダ」をいくつ使った?

「信頼出来るコード」は勝手に増えていく
2012/07/25(水) 03:44:41.83
uy以外の人に聞きたいが
「動的言語で書かれているヘッダ」ってなんのこと?
2012/07/25(水) 03:45:34.43
1万行って少ないな。
1000行が10ファイルしか無い。
2012/07/25(水) 06:55:17.49
LISPマシンやPrologマシンはどのくらいの規模だった?
2012/07/25(水) 08:11:19.64
>>22
それすらわからないってバカ?
C言語で書かれたライブラリをインクルードするのか
動的言語で書かれたライブラリをインクルードするのか
2012/07/25(水) 08:13:27.92
で、基本的に「自分以外」がかいたそういうヘッダってのは
「信頼できるコード」に含まれる
世界中で何百万人が使用しているものだから

結局は自分でそのレベルの安定性を持った水準の動的言語コードをかいて
「アルゴリズムライブラリ」とすれば「信頼出来るコード」は増えていく

以上

2012/07/25(水) 08:41:50.10
>>25
動的言語で書かれているヘッダですよ?
どこにライブラリって書いてあるのですか?

ヘッダとライブラリの違いがわかりませんか?
2012/07/25(水) 11:41:35.75
#include<stdio.h>知らないただのバカか
2012/07/25(水) 12:01:51.61
世の中にはヘッダライブラリというのも存在する事も知らないただのバカか

バカは死ね
2012/07/25(水) 12:02:27.66
動的リンクをしてない言語はライブラリをどのようにして使うかすら知らないバカか

バカは死ね
2012/07/25(水) 12:03:42.01
初心者とバカは死ね
2012/07/25(水) 12:07:26.36
今時の言語でヘッダをインクルードする言語なんて皆無だろ。
2012/07/25(水) 12:18:05.17
rubyやってると本当に変数あんまり使わなくなってくる
イテレータ内のみにスコープのある局所変数の型については、
100%型情報がいらない場所、型情報があるとイテレータの利点が全く生かせない
俺でも稀に型情報が必要かな?って思うのはグローバル変数や、スコープの広い変数
でもrubyではその気になればスコープの広い変数を消して、ブロック変数のみで書いていける
重要なのは変数情報じゃなくて、
メソッド群の組み合わせによって、どうアルゴリズムを作るか
よくイテレータの戻り値を、とりあえずって感じで
a=[...].map {} といった具合に受け取ることはあるが、これさえも
[...].map {}
.map {

}
と続けてかいてしまえば変数がいらない
まぁ可読性のために、変数に格納するんだけど
変数を宣言して使うしかないっていう状況から、
書かなくてもよい変数を、可読性を上げる為にわざと宣言するという考えに変わっていった
2012/07/25(水) 18:00:32.03
>>25
たった一個でいいから、実在の「動的言語で書かれているヘッダ」を示してくれ。
示してくれ。

もし良ければ、and と or と xor の定義も示してくれ。
2012/07/25(水) 21:59:50.81
>>29
だから「動的言語で書かれたヘッダ(ライブラリ)」ってなんだって話だろ。

動的言語で書かないといかんのだぞ。
あと、当たり前だが、ライブラリ=ヘッダ(ライブラリ)ではない。
2012/07/25(水) 22:02:16.10
動的言語はインターフェースの変更に弱い。

インターフェースの変更は単体テストで
見つけることが困難になる場合がある。

37uy
垢版 |
2012/07/25(水) 23:41:23.25
バカすぎワロタ
stdio.hでも食ってろ
2012/07/25(水) 23:46:37.20
stdio.h ・・・C言語(静的型付け言語)のヘッダファイルです。これはライブラリではありません。
39uy
垢版 |
2012/07/26(木) 00:16:15.80
バカすぎワロタ
stdio.hでも食ってろ
2012/07/26(木) 00:16:45.42
uy以外の人に聞きたいが
「動的言語で書かれているヘッダ」ってなんのこと?
2012/07/26(木) 00:17:53.75
初心者スレいけよ低脳
42uy
垢版 |
2012/07/26(木) 00:20:16.84
バカすぎワロタ
stdio.hでも食ってろ
43uy
垢版 |
2012/07/26(木) 00:24:29.43
初心者黙った

そのままstdio.hと添い寝してろ
初心者死ね
44uy
垢版 |
2012/07/26(木) 00:31:36.95

初心者死ね
2012/07/26(木) 00:34:22.77
uy以外誰も答えられないってのが
答えになってる。

そう、「動的言語で書かれているヘッダ」なんてものは
存在しない。
2012/07/26(木) 08:57:34.99
そもそもヘッダってものがごくごく一部の言語にしかないので。
47uy
垢版 |
2012/07/26(木) 10:04:04.91
あ、言っとくけど誰もマジレスしなくていいからね
長文書かれると鬱陶しい

こいつはこのまま放置していこう
48uy
垢版 |
2012/07/26(木) 10:10:59.41
動的言語でプログラムを組むときに普通はいくつもの「ヘッダ」を使い
その「ヘッダ」は、大抵は同じ言語、つまり「動的言語でヘッダ」が書かれている
自分で実際に書いたソースコードと、その「ヘッダ」のソースコードを含めて考えれば
ちょっとしたコードだろうとそれなりの規模のコードになっている事は分かる
大規模開発が出来ないというのは、「信頼出来るコード」、「資産」を自分で作っていけないレベルの奴が言っているだったという結論がでてしまった
49uy
垢版 |
2012/07/26(木) 10:14:59.12
「動的言語で書かれたヘッダ」をひとつも使ったことがないというのは
動的言語でプログラムを書くときに標準や外部ライブラリも含めて何一つ使ったことがないという事・・・
自分でヘッダを描く事も出来ず、
インクルード(あ、言っちゃった)構文さえ知らない

そろそろ謝ったほうがいいんじゃないのか
50uy
垢版 |
2012/07/26(木) 10:31:38.47
初心者は死すべし
で、こういう初心者を追い詰めて論破していくと
また色んなスレでuyに粘着やら成りすまして書き込んで荒らし始める
 何 番 煎 じ だ ?

こんな釣りスレに釣られてレスしにきちゃう分際でどうなんだそれwwwwwwwwww
2012/07/26(木) 11:24:08.18
うん、だからもう 2ch なんて捨ててヨソに行ってよ。
ね。

もう十分に恥ずかしい思いをしたでしょ?
2012/07/26(木) 11:58:59.94
import java.util.List;

これをヘッダのインクルードだと理解しているわけか?すごいな
53uy
垢版 |
2012/07/26(木) 12:44:30.56
やっぱりjaverか・・・
54uy
垢版 |
2012/07/26(木) 13:09:01.25
俺は勘違いしてたかもな
静的言語よりも自由が高く出来る事の多い動的言語で大規模開発が出来ないはずないわ
慣れは必要
どんどん効率上がってきてるのが分かる
2012/07/26(木) 14:42:51.05


50 :uy:2012/07/26(木) 10:31:38.47
初心者は死すべし
で、こういう初心者を追い詰めて論破していくと
また色んなスレでuyに粘着やら成りすまして書き込んで荒らし始める
 何 番 煎 じ だ ?

こんな釣りスレに釣られてレスしにきちゃう分際でどうなんだそれwwwwwwwwww
2012/07/26(木) 15:56:44.73


50 :uy:2012/07/26(木) 10:31:38.47
初心者は死すべし
で、こういう初心者を追い詰めて論破していくと
また色んなスレでuyに粘着やら成りすまして書き込んで荒らし始める
 何 番 煎 じ だ ?

こんな釣りスレに釣られてレスしにきちゃう分際でどうなんだそれwwwwwwwwww
57uy
垢版 |
2012/07/26(木) 19:29:02.43
>>53

> import java.util.List;
>
> これをヘッダのインクルードだと理解しているわけか?すごいな


Rubyではincludeで読み込むファイルのことを
ヘッダファイルっていうんだよ。

知らないなら、ググって恥をかけ!
58uy
垢版 |
2012/07/26(木) 19:30:25.70
> 21 名前:uy[sage] 投稿日:2012/07/25(水) 03:36:50.02
>
> >>17
> 冷静に考えてみ
> その1万行をかくときに
> 「動的言語で書かれているヘッダ」をいくつ使った?

これを読んで疑問になった人は多いと思う。

あえてuy以外の人に聞くが、
「動的言語で書かれているヘッダ」ってなんのこと?
2012/07/26(木) 22:24:58.39
http://doc.ruby-lang.org/ja/1.9.2/method/Module/i/include.html
60uy
垢版 |
2012/07/27(金) 01:31:01.18
rubyでincludeワロタ

ruby使えないどころかrubyのソース1個も読んでない知ったかじゃねーか
61uy
垢版 |
2012/07/27(金) 01:41:01.10
結局ヘッダーっていうのは
ファイルの先頭に書かれている情報であって
「ヘッダ」と「ヘッダーファイル(.h)」は別物
requireやimportされているファイルは「ヘッダ」または「ヘッダライブラリ」と呼ぶ
C++/Boostのhppなども「ヘッダライブラリ」に分類される

またそれとは別に動的言語でDLLを使う場合には、C言語と同じようにプロトタイプ宣言の「ヘッダ」を書く事もある
またそれは別に、中規模以上であればファイルの先頭には定数情報やら、クラス、モジュールの空宣言などをやっておく事もあるんで
これらも「ヘッダ」と呼ぶ

分かったか?ゴミ
62uy
垢版 |
2012/07/27(金) 01:43:01.28
>>22
さっさと泣いて謝れ
2012/07/27(金) 03:22:37.53
>>61
> requireやimportされているファイルは「ヘッダ」または「ヘッダライブラリ」と呼ぶ

はあ?
2012/07/27(金) 05:04:28.09
   ッ「ペロバコナーンwwwwwwwwwwwwwwww」
2012/07/27(金) 06:27:14.26
>57
http://doc.ruby-lang.org/ja/search/query:include/
http://doc.ruby-lang.org/ja/1.9.3/function/include_class_new.html
http://doc.ruby-lang.org/ja/1.9.3/method/Module/i/include.html
http://doc.ruby-lang.org/ja/search/query:%E3%83%98%E3%83%83%E3%83%80/

おまえこそググれよ。

>61
恥の上塗り。
笑いものになることに快感を覚えているのではなかろうか。
66uy
垢版 |
2012/07/27(金) 08:14:28.84
なんか忘れてるみたいだから書いておくね。

「動的言語で書かれているヘッダ」とは
uyこと俺が言った言葉。

21 名前:uy[sage] 投稿日:2012/07/25(水) 03:36:50.02
>>19-20
死ね


>>17
冷静に考えてみ
その1万行をかくときに
「動的言語で書かれているヘッダ」をいくつ使った?

「信頼出来るコード」は勝手に増えていく
67uy
垢版 |
2012/07/27(金) 19:36:37.93
>>65
include(笑)


この初心者に教える必要はない

結論、
動的言語で大規模開発は出来る

「信頼出来るコード」は勝手に増えていく
68uy
垢版 |
2012/07/27(金) 19:38:30.34
rubyのincludeは今の話しと違うだろ・・・
るりまサーチをGoogleと勘違いしている頭の悪さ

コイツは救えない

stdio.hでも食ってろカス
69uy
垢版 |
2012/07/28(土) 08:07:31.39
さっさと謝れ
2012/07/28(土) 11:02:45.57
>>68
いやw
include 対象が「ヘッダ」だと書いたページをw
一個でもいいから探して来いよw

>57 の
> Rubyではincludeで読み込むファイルのことを
> ヘッダファイルっていうんだよ。
の話さあw
2012/07/28(土) 12:53:20.49
>>61
30年プログラム書いてるけどはじめて聞いた。
勉強になるなあ。
2012/07/28(土) 15:23:50.83
ファイルの始めに書かかれている、ライセンスや開発者名なんかはヘッダーと言えるような気もする。
73uy
垢版 |
2012/07/28(土) 19:16:03.90
>>71
煽りぬきで30年間何やってたんだ?

>>72
そもそも「ヘッダー」というのは
例えば テキスト.txtのバイナリの先頭部分だってヘッダーと呼ぶべきものだし
ソースファイルの先頭に書かれているものは全部ヘッダーだよ
import requireしてるならそれはヘッダーライブラリ

ruby使ってても、ある程度やっていくとruby言語をrubyで拡張したRbファイル
などを最初にrequireしておく事もあるんで
それは明らかにヘッダーと呼ぶべきものだろ

無知が騒いでいる
74uy
垢版 |
2012/07/28(土) 19:20:53.36
C言語では「.h」のヘッダーでインクルードしてdefineなど定数宣言したり
クラス、構造体の宣言だけを行うこともある

rubyファイルでそれと同じことを行うこともある
動的、静的は関係なく
ヘッダーというのは存在する
動的言語で大規模開発は可能

分かったかゴミ?

さっさと初心者は死ね
75uy
垢版 |
2012/07/28(土) 19:23:05.62
>>70
まだincludeについて間違った見解もってんのお前?

rubyのincludeは今回の話とは別だと何度も言っている
初心者以下のゴミクズ
そんなんだから>>65 こんな的外れのURLもってくるんだよ

ゴミは死ね
2012/07/28(土) 19:24:08.49
初心者死ね
2012/07/28(土) 19:37:11.07
>>73
pgr
2012/07/28(土) 19:38:43.08
>>73
$ cat null-act.c
int main(void) {
return 0;
}

どこがヘッダですか?
79uy
垢版 |
2012/07/28(土) 19:50:30.14
ドヤ顔で500年以上前に流行っていまはもう使われてないC言語っていうんだっけそれ
そんなもののソース出されても正直困る

歴史に埋もれて市ね
80uy
垢版 |
2012/07/28(土) 20:01:44.24
テキストファイルの上の部分がヘッダとか
見苦しい言い訳をしているが、

それだと

> その1万行をかくときに
> 「動的言語で書かれているヘッダ」をいくつ使った?

つじつまがあわない。
ヘッダを使うとはどういうことか。
2012/07/28(土) 21:11:15.85
ゴミは死ね
2012/07/29(日) 00:41:12.87
ゴミグラマ死ね
2012/07/29(日) 01:23:55.92
死ねゴミ
2012/07/29(日) 02:26:34.65
ゴミ
2012/07/29(日) 12:16:42.75
Matz はどういうだろうね?
2012/07/29(日) 12:57:02.43
cに対する煽りが半端でつまらんな
もっとくやしく
2012/07/29(日) 17:38:17.52
動的言語における大規模開発の適性については、すでに1980年代に結論が出ている
以下は、XEROXがSmalltalk-80で開発した大規模アプリケーションの具体例
(出典: Information/April 1986)

EELS - 紙面編集システム
・EELS(Electronic Editing and Layout System)は、ニューヨークタイムス社との
 契約によりXSIS(Xerox Special Information Syatems)が開発した
 新聞の編集とデザインのためのシステムであり、新聞の紙面向けの
 この種のシステムとしては世界初。このシステムは、紙面の編集や表示を
 1100SIPワークステーション上で行う事を可能にした。
・前工程で組まれた活字を自動的に読み込み、編集規則に合わせて再構成したり
 会話形式でテキストを修正できる。さらに記事がレイアウトにフィットしない
 場合には、レイアウト自体も動的に調整できる。また、活字を組むための
 テキスト用のページや、各種の字体も用意されている。

ANALYST - 分析シミュレーションシステム
・ANALYSTは米国政府で行われている広範囲な情報分析向けにXSISが開発した
 システムであり、すべてがSmalltak-80で実装され1983年秋から稼働している。
・ANALYSTはグラフ、地図情報、イメージ情報(航空写真など)、テキスト、
 数値演算(スプレッドシートなど)といった各種の情報処理機能を包含しており、
 ワークステーションの中に分析者が必要とするすべての情報処理機能を
 備えているといえる。また、電子メール機能、イメージ処理機能、電子ファイル
 管理機能、IBMのような大型機へのアクセス機能などの特徴も備えている。
88uy
垢版 |
2012/07/29(日) 18:11:52.22
今は1980年ではない。

それ以降に静的型付け言語が成熟した。

今は動的型付け言語のメリットはない。
2012/07/29(日) 19:03:44.51
Smalltalkは当時からすでに下手な静的型言語より手厚いIDEのサポートがデフォだから
動的言語の適性を示す例としては反則だろう。
90uy
垢版 |
2012/07/29(日) 19:04:48.12
Smalltalkって今どうなったんだ?
2012/07/29(日) 20:19:48.62
本家XEROX Smalltalk-80の直系の子孫はCincom社が開発販売しているVisualWorks。
http://smalltalk.cincom.jp/main/successes/

開発途上版(Smalltalk-80 v1)から枝分かれして独自進化したのがSqueak。
http://www.squeak.org/

さらにSqueakから枝分かれしたのがPharo。
http://www.pharo-project.org/

あとは企業の古くかあるクローンとか
http://www.exept.de/en/products/smalltalkx
http://www.object-arts.com/
http://www.instantiations.com/products/vasmalltalk/

他にはファンお手製実装とかの変わり種などいろいろ。
http://smalltalk.gnu.org/
http://amber-lang.net/
2012/07/29(日) 20:49:29.32
変わり種と言えば、処理系まるごとOODBシステムと化したGemStone/Sというのもある。
http://www.gemstone.com/products/gemstone

MaglevというSmalltalkベースの高速なRuby実装にはこの処理系が使われている。
http://maglev.github.com/
2012/07/29(日) 21:01:18.67
>>89
つーかSmalltalkは、動的に型チェックしたり、
型をファーストクラスオブジェクトとして使えるけど、
コンパイル時に強い型付けもしてるからな。
静的型付けもうまく組み合わせて使える。
94uy
垢版 |
2012/07/29(日) 21:08:13.04
Smalltalkってウェブ関連では使われてないな。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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