【Perl,Python,PHP】LL バトルロワイヤル 25【JavaScript】
レス数が1000を超えています。これ以上書き込みはできません。
0001uy
2012/08/11(土) 12:21:25.19979 名前:uy[sage] 投稿日:2012/08/11(土) 11:53:55.80
面接官「特技はRubyとありますが?」
学生 「はい。Rubyでならなんでもかけます。」
面接官「ではシングルトンパターンを書いてください。」
学生 「存在しません?」
面接官「え、存在しない?」
学生 「はい。存在しません。Rubyはシングルトンパターンを言語でサポートしています。」
面接官「・・・で、その言語でサポートされた機能を使うとシングルトンパターンになるんですよね?」
学生 「はい。シングルトンパターンです。」
面接官「いや、あなたRubyでシングルトンパターンは存在しないといいましたよね。なぜシングルトンパターンになるんですか?」
学生 「でも、シングルトンパターンは存在しないんですよ。」
面接官「いや、存在しないとか問題じゃなくてですね・・・」
学生 「Rubyなら簡単にシングルトンパターン書けますよ。」
面接官「ふざけないでください。それに機能が用意されてるってことは存在するでしょ。だいたい・・・」
学生 「機能は用意されていますが言語でサポートしているんです。だから存在しません。」
面接官「聞いてません。帰って下さい。」
学生 「あれあれ?怒らせていいんですか?シングルトンパターン書きますよ。」
面接官「いいですよ。書いてください。Rubyでシングルトンパターンを。それで満足したら帰って下さい。」
学生 「運がよかったな。Rubyにシングルトンパターンは存在しないようだ。」
面接官「帰れよ。」
0002デフォルトの名無しさん
2012/08/11(土) 12:26:04.75キモすぎるわ
0004uy
2012/08/11(土) 12:32:37.65993 名前:uy :2012/08/11(土) 12:11:44.29
ほらよ
デザインパターンのシングルトン
http://doc.ruby-lang.org/ja/1.9.3/class/Singleton.html
rubyのシングルトン
http://doc.ruby-lang.org/ja/1.9.3/doc/spec=2fdef.html#singleton_class
はい、"完全"別物です
997 名前:uy :2012/08/11(土) 12:13:37.44
>>995
だーかーら、rubyちょっとは勉強しろよ話にならねーから
ヒント:methods.sort.grep(/singleton/)
0005uy
2012/08/11(土) 12:37:30.730007uy
2012/08/11(土) 13:01:39.22わけがわからないよ
0009uy
2012/08/11(土) 13:03:18.760010uy
2012/08/11(土) 13:12:19.060011uy
2012/08/11(土) 13:20:55.28end
これはシングルトンメソッドです
特異メソッドです
0012uy
2012/08/11(土) 13:34:36.00シングルトンパターンとどういう関連があるのでしょうか?
0013デフォルトの名無しさん
2012/08/11(土) 13:41:46.470014uy
2012/08/11(土) 13:48:27.68シングルトンパターンという名前の
シングルトンを借りただけってことがわかりました。
つまり、目的がぜんぜん違う別物です。
Rubyはもちろんシングルトンパターンがありますが
それとは別にシングルトンメソッドがあるということです。
0015デフォルトの名無しさん
2012/08/11(土) 13:50:00.580016uy
2012/08/11(土) 13:50:16.100017uy
2012/08/11(土) 13:52:11.02名前とは反して、インスタンス数を最大いくつって
制限する方法が応用例として書いてあったよ。
0019uy
2012/08/11(土) 13:54:27.80馬鹿が一人で混乱してただけだろw
0020uy
2012/08/11(土) 13:57:06.71デザインパターンは、考え方であって
実装コードじゃないの意味がやっと理解できたんだろうね。
無知なやつほど、よく噛み付く。
0021uy
2012/08/11(土) 14:07:20.82メソッド名がupdateと決まってる
0022uy
2012/08/11(土) 14:09:19.05実装コードとは言わんw
0023uy
2012/08/11(土) 14:10:24.11実装を分けて考えるってのが
苦手なのかもしれないね。
インターフェースって言語機能のやつじゃなくて
これも考え方の話。
0024デフォルトの名無しさん
2012/08/11(土) 14:49:58.700025uy
2012/08/11(土) 15:18:01.22p ObjectSpace.count_objects
test_uy = 9999999999
ObjectSpace.each_object.map do |m|
m
end
.each do |m|
if m.to_s =~ /test_uy/
p m
end
end
こんな事出来る言語ほかにある?
勝てそうな言語ある?
0026デフォルトの名無しさん
2012/08/11(土) 16:05:51.58そんな事しても、Rubyはそのうちフェードアウトするのでご心配なく。
なぜなら文法が汚すぎるから。
0027uy
2012/08/11(土) 16:23:45.44一時的にperlがいけなかった場所まで上っているにすぎない
0028uy
2012/08/11(土) 17:02:00.80英語が苦手なプログラマーにもお勧めです
0029デフォルトの名無しさん
2012/08/11(土) 17:08:49.200030デフォルトの名無しさん
2012/08/11(土) 17:14:16.81でもそれだけだとスクリプト言語でCのライブラリを書き写して公開するとかが簡単にはできない
0031デフォルトの名無しさん
2012/08/11(土) 17:16:51.40を一ヶ所に閉じ込めれば最強のecmaスクリプトが出来上がると思うの
0032デフォルトの名無しさん
2012/08/11(土) 17:17:59.94こんなのRubyの専売特許じゃない
0033uy
2012/08/11(土) 18:47:14.71Java
http://itpro.nikkeibp.co.jp/article/COLUMN/20061102/252525/
> 「http://localhost:7000/」で閲覧できるのはクラスの一覧です。
0034uy
2012/08/11(土) 18:47:55.40http://www.javainthebox.net/laboratory/JavaSE6/managementtools/mngtools.html
0035デフォルトの名無しさん
2012/08/11(土) 18:48:08.190036デフォルトの名無しさん
2012/08/11(土) 19:09:09.51foo = 999999
[print(y) for x,y in locals().items() if x == 'foo']
0037デフォルトの名無しさん
2012/08/11(土) 19:51:17.880038デフォルトの名無しさん
2012/08/11(土) 20:16:15.88そういうことをしたいなら、そういうコードを書いてくださいっていう。
共通の基底クラスすらないし。
0039デフォルトの名無しさん
2012/08/11(土) 21:31:11.39あれは一体、何が嬉しいんだろう
0040デフォルトの名無しさん
2012/08/11(土) 21:40:17.000041デフォルトの名無しさん
2012/08/11(土) 21:52:26.98c++にinstanceofみたいな命令あったかな
0042デフォルトの名無しさん
2012/08/11(土) 21:58:13.860043デフォルトの名無しさん
2012/08/11(土) 22:21:30.71リア充臭いから爆発しないかな
0044デフォルトの名無しさん
2012/08/12(日) 01:32:08.05web系記者はアホな記事を書きやがって
0045デフォルトの名無しさん
2012/08/12(日) 01:53:47.56おい一人鬼籍に入られてる
0046デフォルトの名無しさん
2012/08/12(日) 13:51:52.99RubyやPytonなんてLLなんて言わん。単なるスクリプト言語。
もう俺がLLの必須定義を2つ書いておくからお前ら条件満たしてない言語の会話するなよ。
LLの定義
・C/C++/javaの代替を目指す言語であること。
・コンパイラが存在すること、VMが充実していること。
この2つは絶対に必要十分条件だ。
低レベルなプログラミングを目指すのに実行環境が用意できん言語とか一発退場だ。
RubyとPythonはこの時点でアウト、スレチ、なんのために存在するの?
LLなんて入れるのはJavaScriptしかねえだろ。
VMはほぼどのパソコンにも乗っている。
コンパイラもインテルがHPC向けに作ってる。
サーバーサイドもJavaScriptも浸透してる。
今の世の中、JavaScript以外にLLの選択肢なんてない。
LLの定義を勘違いしてるウンコ君どもはサーバーサイドプログラムのバトルロワイヤルでもやってな。
0047デフォルトの名無しさん
2012/08/12(日) 13:54:27.71お前日本語のLLの定義が嫌なら
書き込みも英語でしろよ
0048デフォルトの名無しさん
2012/08/12(日) 13:59:01.33PHPも独立させるべきかな。
あとついでPerlはもう誰も触れないからいっか。
0049デフォルトの名無しさん
2012/08/12(日) 14:03:07.420050デフォルトの名無しさん
2012/08/12(日) 14:11:17.83この中からバトルロワイヤルします
https://github.com/jashkenas/coffee-script/wiki/List-of-languages-that-compile-to-JS
0051デフォルトの名無しさん
2012/08/12(日) 15:11:24.400052デフォルトの名無しさん
2012/08/12(日) 15:14:00.410053デフォルトの名無しさん
2012/08/12(日) 15:16:12.93言語として本当にJavascriptが優れてたら
>>50のリストがこんなに一杯にならないと思うよ
直接Javascript書けば済む話だからね
0054デフォルトの名無しさん
2012/08/12(日) 15:21:19.17試しにコマンドラインから使えるgrepとcurlのサブセットでも書いてみてくれないか(煽りじゃないよ)
どんなふうにJavaScriptでPerlやRubyを代替するのか知りたい
0055デフォルトの名無しさん
2012/08/12(日) 16:59:40.67どちらかというと gc.get_objects() じゃない?
0056uy
2012/08/12(日) 18:22:47.60scala(笑)とは違うのが一目でわかった
rubyっぽくかけるJAVAって印象
あれが伸びたら動的言語の地位が危ない気がすると俺様は警告を出してみる
0057デフォルトの名無しさん
2012/08/12(日) 18:33:21.22お前C言語ディスってんのか
0058デフォルトの名無しさん
2012/08/12(日) 19:09:09.610059デフォルトの名無しさん
2012/08/12(日) 20:08:27.370060デフォルトの名無しさん
2012/08/12(日) 20:19:12.50C言語、Java、HTML&JavaScript、PHPやらが現状のドカタ専用言語。
社会で使われないRubyとPythonは生産性の欠片もないんだろうな。
0061デフォルトの名無しさん
2012/08/12(日) 20:27:50.58低能だから習得可能な言語が限られているだけだよ
ドカタ専用言語 ≠ 生産性が高い
0062デフォルトの名無しさん
2012/08/12(日) 21:00:52.62たいして上がらなかったから未だにC言語がシェアNo1なんじゃないの?
0063デフォルトの名無しさん
2012/08/12(日) 21:01:21.06Pythonをバカにする奴はにわか
0064デフォルトの名無しさん
2012/08/12(日) 21:12:14.400065デフォルトの名無しさん
2012/08/12(日) 21:57:28.35それ訊いてどうしたいの?どうせ低能の君には使えないのに
0066デフォルトの名無しさん
2012/08/12(日) 22:14:23.14こんな簡単な問題にレスがつかないのって何で?
0067デフォルトの名無しさん
2012/08/12(日) 22:19:00.800068デフォルトの名無しさん
2012/08/12(日) 22:22:48.79結局そういう煽りしか出来ねーんじゃん。
0069デフォルトの名無しさん
2012/08/12(日) 22:31:11.680070デフォルトの名無しさん
2012/08/12(日) 22:51:31.69スレタイに入ってる言語はruby様に刃向かった為に論破されていく
0071デフォルトの名無しさん
2012/08/12(日) 23:10:27.51隔離スレ
0072デフォルトの名無しさん
2012/08/12(日) 23:19:31.25隔離スレとして機能してねーじゃん
0073デフォルトの名無しさん
2012/08/12(日) 23:21:20.74キチガイをヲチしてニヤニヤするスレです
ほーらruby厨がすぐ近くに!
0074デフォルトの名無しさん
2012/08/12(日) 23:26:12.33自分は>>54だけど>>66とは別人(どうでもいいけど)
探してみたらJavaScriptにも雑用向けのライブラリ入りの処理系がちょいちょいあるようだ
https://developer.mozilla.org/en-US/docs/JavaScript/Shells
そのうちJSDBって処理系だとこう書けるらしい。普通に使えそう
http://www.jsdb.org/cookbook.html
0075デフォルトの名無しさん
2012/08/12(日) 23:35:50.630076デフォルトの名無しさん
2012/08/12(日) 23:37:57.290077デフォルトの名無しさん
2012/08/12(日) 23:39:19.320078デフォルトの名無しさん
2012/08/13(月) 10:33:57.60動的型言語だから、型を指定する必要は無いけど、
それでも変数のスコープを指定する必要はあるので、
結局変数宣言は省けない。
無理に省くとPythonやRubyみたいに奇妙なことになる。
0079デフォルトの名無しさん
2012/08/13(月) 10:36:32.02http://www.tiobe.com/index.php/paperinfo/tpci/JavaScript.html
0080デフォルトの名無しさん
2012/08/13(月) 11:11:23.23使われない理由のひとつがまずそこら辺だろう
0081デフォルトの名無しさん
2012/08/13(月) 11:13:52.71何かオプションつけて宣言するならグローバル変数のほうだよ
jsは逆に設計しちゃったのか?
ローカル変数は簡単な記述でいいのに
0082デフォルトの名無しさん
2012/08/13(月) 11:56:10.67一理あるが、それがその場しのぎの屁理屈ではないということを示すためには
「引数も多いから引数も宣言するべきではない」と言い切る覚悟が必要
0083デフォルトの名無しさん
2012/08/13(月) 11:57:16.00代入(名前への値の束縛)にはJSと同様、文の頭に val が付く。
ただし、SMLの場合はあらゆる構文で文が予約語から始まることで
言語全体の構文が簡潔で明解になっている。
また階層的で明確な名前空間があるから、変数にグローバルや
ローカルといった区別は不要。トップレベルで代入された変数が、
いわるゆグローバル変数と同等な扱いになる。さらには大規模開発向けに
モジュールによって名前空間を明示的に分離できる。
考えるに、元々JSはWebブラウザ上の素朴な簡易スクリプト言語として
設計されたけど、近年では重要度が増して開発規模が増大してきた。
言語設計の想定外の用途に利用が広がったことの弊害ではないかと思う。
結論から言うと、言語設計時に大規模開発を想定していた
PythonやRubyといった他のLLと比較して、JSは大規模開発に向いていない。
0084デフォルトの名無しさん
2012/08/13(月) 12:03:30.82Cみたいに関数冒頭で宣言する言語なんだろ結局
関数ネストがよく使われる言語だし
jsで大規模やろうとするとオレオレのクラス実装や名前空間実装出てきちゃうのはあるな
その為のcoffeescriptとかなんだろうけど
0085デフォルトの名無しさん
2012/08/13(月) 12:05:04.84全然わからんので日本語で頼む
0086デフォルトの名無しさん
2012/08/13(月) 12:06:26.04グローバルとローカル以外にも、その中間にあたる、ネストスコープとかあるから。
特に最近はクロージャやラムダを多用する方向だから、ネストスコープだらけになる。
もし変数宣言がなければ、の { i=0; { i=1; } }
内側のiと外側のiが同じものなのか違うものなのか区別を付けれない。
ちなみに、Rubyだと同じもの、Pythonだと違うもの、となる。
Ruby方式だと、意図せずに変数名が被ったときにバグるし、
Python方式だと、外のスコープの変数への代入が出来ない。
その点、JSだと、varが付いていれば新しい変数、なければ外のスコープの変数、
だから、使い分けが出来るし、かつ安全で、可読性も高い。
0087デフォルトの名無しさん
2012/08/13(月) 12:13:47.63言ってることはわからなくも無いが、スコープについて言及しているのであれば、最後の一文、
>PythonやRubyといった他のLLと比較して、JSは大規模開発に向いていない。
これはおかしい。なぜならPythonやRubyのスコープは、JSよりもさらに劣っているから。
特にPythonはスコープ内での代入の有る無しでスコープが切り替わる。
この前代未聞なカス仕様を擁護できる奴は誰もいない。マジでひどい。
3.0でnonlocal追加したときに、このカス仕様も修正すればよかったのに。
nonlocalがあるなら、代入の有る無しでスコープが切り替わるカス仕様は要らないわな。
0088デフォルトの名無しさん
2012/08/13(月) 12:14:01.62お前それサバンナでも同じこと言い切る覚悟あるの?
0089デフォルトの名無しさん
2012/08/13(月) 12:16:12.13Pyhtonのような思いきって後方互換性を切り捨てるというような
言語仕様の変更や拡張は無理だろうね。
言い換えると、今後とも言語仕様の発展性は見込めない。
0090デフォルトの名無しさん
2012/08/13(月) 12:17:06.52けどそれだとちょっとした小さな使い捨てスクリプトを書く時に
varをつけるかつけないか悩む事にならね?
使い捨てスクリプトとして書いても、後からコピペして別の場所で使う可能性も考えると
varつけなきゃいけない気もしてくるし
jsのサンプルってみんなそうなってる気がする
俺の気のせいじゃなければjsって
大規模プログラム向いていないし、小規模スクリプトも向いてなくね?
0091デフォルトの名無しさん
2012/08/13(月) 12:36:27.32外のスコープの変数にアクセスする場合は、つけないし、
そうじゃない場合はつければよい。何も悩む必要は無い。
変数の最適なスコープは常に一つしかないのだから、それに準じればよい。
外のスコープで同名の変数が有るか無いか気を配らなければならないRubyや、
代入の有る無しでスコープが切り替わってしまうPythonなんかに比べれば、
遥かに単純で、考えることは少ない。
スコープ以外のことに関してで、RubyやPythonを持ち上げて、JSをこき下ろす事は結構だけど、
ことスコープに関しては、それは無理。
ただ、JSのスコープの仕様が特に優れているというわけでもないが。
RubyとPython、特にPythonの仕様が異端で、どうかしているってだけの話なので。
JSのスコープのやり方は他の言語でも見られるスタンダードなものだし、
当たり前のことを当たり前にやってるだけ。
難点を挙げるとすれば、ブロックスコープが無いことか。まぁRubyやPythonにも無いんだけどね。
0092デフォルトの名無しさん
2012/08/13(月) 12:44:16.41変数宣言が必要になる時点で小さなスクリプトを書くのにjsは向いていない
かといって
>結論から言うと、言語設計時に大規模開発を想定していた
>PythonやRubyといった他のLLと比較して、JSは大規模開発に向いていない。
こういう事情もあるから大規模開発にも向いていない
あ、ゴミか^^;
rubyを知らない知ったかゴミカス野朗みたいだけど、rubyにブロックスコープはある
0093デフォルトの名無しさん
2012/08/13(月) 12:48:57.94他の言語で言うところのブロックスコープだ。
0094デフォルトの名無しさん
2012/08/13(月) 13:18:03.830095デフォルトの名無しさん
2012/08/13(月) 13:46:22.710096デフォルトの名無しさん
2012/08/13(月) 16:52:09.340097デフォルトの名無しさん
2012/08/13(月) 17:28:35.800098デフォルトの名無しさん
2012/08/14(火) 07:24:16.04Smalltalkの影響を受けた言語は今でもスコープがおかしい
0099デフォルトの名無しさん
2012/08/14(火) 07:55:53.88Prologにスコープはないな。
0100デフォルトの名無しさん
2012/08/14(火) 08:14:25.83繰り返しは?
0101デフォルトの名無しさん
2012/08/14(火) 08:53:56.63Cでも if (foo && bar && ……) return 1; のように書ければ{}はほぼ無くなるし
0102デフォルトの名無しさん
2012/08/14(火) 08:54:26.78ブロックスコープなのはPerlだけでしょ。
それでもJSの場合、名前空間もなければClassもないので、一番分かりづらいというのはあるね。
0103デフォルトの名無しさん
2012/08/14(火) 09:04:12.85どうおかしいの?
0104デフォルトの名無しさん
2012/08/14(火) 09:16:09.79繰り返し構文がないのだから、「ない」と言い切っていいんじゃないか。
仕様が「繰り返せ」の場合は再帰で表現するのだが、これも、繰り返しとも
読める、くらいの解釈でいい。節と節がバラバラに主張していて先ずその主張の
核心を「宣言的に」読み取るのがPrologなのではないか。仕様の繰り返しを陽に
するには、述語名で「・・・を繰り返す」とはっきり述べるのが一番よいだろう。
0105デフォルトの名無しさん
2012/08/14(火) 09:33:09.22RubyもPythonも大きな差はないとか言われてもスルーしてる時点でおかしいだろ
0106デフォルトの名無しさん
2012/08/14(火) 09:44:51.21{i=0; {var i=1;} }
とかしてもJSにはブロックスコープは無いから外側のiと内側のiは同じものになってしまう
var宣言を単純にブロックの内側と外側の変数を区別するものには使えない
JSでブロックスコープ的なものが使いたいときはブロックの代わりに無名関数でくくらないと
{i=0; (function(){ var i=1; })(); }
0107デフォルトの名無しさん
2012/08/14(火) 10:20:58.13PythonとRubyとJSでそれぞれ記述が違うので、
{{}}で、ネストスコープ一般を表現したってだけ。
0108デフォルトの名無しさん
2012/08/14(火) 10:28:50.69たしかにブロックのスコープとは書いてないね
0109デフォルトの名無しさん
2012/08/14(火) 10:59:07.14マトモな言語使いたかったら静的型付け関数型言語でも使ってろ
0110デフォルトの名無しさん
2012/08/14(火) 11:15:01.64スレタイ嫁
0111デフォルトの名無しさん
2012/08/14(火) 11:20:59.960112デフォルトの名無しさん
2012/08/14(火) 12:17:19.67実際にはPerlに勝ったとか負けたとか考えない言語のほうがマシだった
0113デフォルトの名無しさん
2012/08/14(火) 16:44:44.540114デフォルトの名無しさん
2012/08/14(火) 22:46:09.32# C
1 for()
2 {
3 コード
4 }
# ruby
1 map do
2 コード
3 end
do 〜 endより { } のほうが、読みやすいことが分かった
0115デフォルトの名無しさん
2012/08/14(火) 22:52:33.16smalltalk風の開発環境でDOMやhtml5を弄れるruby処理系なんてあれば最強じゃね?
0116デフォルトの名無しさん
2012/08/14(火) 22:58:15.05Ruby処理系(MagLev)ならあったが……
0117デフォルトの名無しさん
2012/08/14(火) 23:31:05.55ハア?
irb(main):001:0> [1,2,3].each { |x| p x }
1
2
3
=> [1, 2, 3]
0118デフォルトの名無しさん
2012/08/15(水) 00:44:10.32PHPからclojureまであるのに
0119デフォルトの名無しさん
2012/08/15(水) 07:29:06.13勝手に広まって勝手に定着したから。
0120デフォルトの名無しさん
2012/08/15(水) 08:37:53.53他言語からJavascriptへコンパイルするのが流行り
直接Javascript書くのは低能
0121デフォルトの名無しさん
2012/08/15(水) 09:00:24.91定着しないのが特徴かな。実行環境が不安定過ぎた。
一時熱中して、そして去っていく。だから、プログラマ数も増えない。
0122デフォルトの名無しさん
2012/08/15(水) 09:31:59.66今後は、これまでの軽量言語を抑えて最大になると思うけど
githubは既にjsの登録数がrubyを越えている
そして、熱心なファンは海外ではninjaだとか言われてるみたいだぞ
0123デフォルトの名無しさん
2012/08/15(水) 09:42:35.15TIOBE INDEX がそれを物語っているね。みんなJSはもっと
使われてるでしょって言う。使ってみた人の数は多いが、
現時点での活性はやはり検索数のようなものに出てしまう。
0124デフォルトの名無しさん
2012/08/15(水) 11:16:18.20あれがブラウザ以外で使えると思ってる子はちょっとな
ブラウザ用に作られてる言語だからそれを外に引っ張り出してきても
コーディング自体が楽になるようなシンタックスシュガー系の拡張は何もやってくれないと思うよ
そんな言語で頑張りたければどうぞ
0125デフォルトの名無しさん
2012/08/15(水) 11:26:01.35Ajaxは流行ったと思うけど、それでもダメだった。きびしいですね。
0126デフォルトの名無しさん
2012/08/15(水) 11:29:37.610127デフォルトの名無しさん
2012/08/15(水) 11:33:37.84流行り廃りに関係ない、息の長い言語になるだろうね。
0128デフォルトの名無しさん
2012/08/15(水) 11:39:35.25http://www.tiobe.com/index.php/paperinfo/tpci/JavaScript.html
0129デフォルトの名無しさん
2012/08/15(水) 12:01:49.91その時がjsの終わり
0130デフォルトの名無しさん
2012/08/15(水) 12:17:02.89MSが乗せようっていうとAppleが嫌だって言うだろうし、
なかなか標準の規格に入らないんじゃないかね。
別に規格外でも、互換性糞食らえで乗せたきゃ勝手に
乗せればよいんだが、特定のブラウザでしか動かないのでは
普及するわけ無いし。
やっぱり足並み揃えない取って事で、
新バージョンのJSが乗っかって終わりでしょう。
0131デフォルトの名無しさん
2012/08/15(水) 12:26:28.68今以上にカオスになるな
クロスブラウザ対応不可能になる
0132uy
2012/08/15(水) 13:14:53.160133デフォルトの名無しさん
2012/08/15(水) 13:16:51.90Appleが提案してもGoogleとMSは反対する。
0134uy
2012/08/15(水) 13:30:47.000135デフォルトの名無しさん
2012/08/15(水) 13:40:46.020136デフォルトの名無しさん
2012/08/15(水) 14:10:15.96議論に負けるといつもこれだ。
0137uy
2012/08/15(水) 14:18:24.05IronJavaScriptは存在しない
0138デフォルトの名無しさん
2012/08/15(水) 14:23:07.71同様にブラウザで動かすならJSだがな。
RubyはPythonともろに食い合う不幸な運命。
0139uy
2012/08/15(水) 14:25:59.58http://ynupl.com/reddam/archives/155
こういう使い方だと思うけど
なんだと思った?
Scala(笑)がJavaのクラスを継承できます(キリッ)とかいってたけど
それと同じ
0140デフォルトの名無しさん
2012/08/15(水) 14:33:23.30C言語はOSを作るために作った言語だし、
JSはネスケ社がブラウザ作る片手間に作った言語だし、
JavaはJavaVMと一蓮托生だし、
C#は.Netのために作った言語。
だからさ、Rubyも普及させたいのなら、marzに頼んで、
社会の基盤になってしまうような、革新的超便利ツール作ってもらって、
その組み込みスクリプト言語としてRuby乗せれば?
言語だけ作って後はポイ投げってのはダメ言語の典型なんだよ。
むしろツールの作成を本業とし、そっちの普及を目的とすべし。
言語開発なんかは、必要に迫られて、傍らでするぐらいでよい。
普及してて人気のある言語はほとんどそう。
ツールに引っ付いて勝手に広まった。
0141デフォルトの名無しさん
2012/08/15(水) 14:36:53.30http://shop.oreilly.com/product/0636920022626.do
0142デフォルトの名無しさん
2012/08/15(水) 14:40:36.21えっ
http://ja.wikipedia.org/wiki/JScript#JScript_.NET
0143デフォルトの名無しさん
2012/08/15(水) 14:43:17.24元がPerlに不満を持ったMatzが書き上げたオレ言語がRubyなので
実際今でも一番多い使い方が
たぶんシェルスクリプト・Perl・make辺りの代替でしょ
プロダクト未満の小物が本来の主戦場
ただ、何か知らんが一部のハッカーの琴線に触れるものがあるらしく
RailsやらRedmineやらMetasploitやら
一線級のソフトも出てきた、というのがここ5年ぐらいの話
0144デフォルトの名無しさん
2012/08/15(水) 15:07:36.870145uy
2012/08/15(水) 15:10:21.840146デフォルトの名無しさん
2012/08/15(水) 15:17:03.870147デフォルトの名無しさん
2012/08/15(水) 15:19:13.660148uy
2012/08/15(水) 15:23:41.390149デフォルトの名無しさん
2012/08/15(水) 15:39:44.61パイプでブロック引数をはさまないと、
それがブロック引数なのか、
単に式としてそこにあるのかが区別できない
0150uy
2012/08/15(水) 15:42:23.840151デフォルトの名無しさん
2012/08/15(水) 15:46:24.88pythonみたいな
for t in list:
みたいにできなかったの?
絶対にこっちのほうがわかりやすいと思うんだけど||でかこったら特殊な演算やってそうじゃん
0152uy
2012/08/15(水) 15:48:47.94ていうか、何で分からないのか分からない
最初から最後までオブジェクトで出来てる時点でさ
if true
5
end.times do | n |
p n
end
こう、IFの戻り値さえそのままメソッドチェインで使えるんだけど
0153デフォルトの名無しさん
2012/08/15(水) 15:49:51.63for t in list; end という構文も最初から存在していますけど、なにか?
0154デフォルトの名無しさん
2012/08/15(水) 15:54:31.43Rubyにおいて if や case といった条件分岐は
文(statement)ではなく式(expression)だから
これはSmalltalkも同じ
手続き型言語として見れば異端だけど、
関数型言語として考えれば実に自然なプログラミングができる
0155デフォルトの名無しさん
2012/08/15(水) 16:03:00.24なんであんまりrubyではその構文使わずに使わずにeach doするの?
0156uy
2012/08/15(水) 16:22:03.270157uy
2012/08/15(水) 16:23:28.480158153
2012/08/15(水) 16:26:13.52おそらく列挙オブジェクトへブロック付きメッセージを送るという
Smalltalk流のオブジェクト指向スタイルが好まれるからだと思う
for構文は手続き型スタイルであり、PerlやPythonから移ってきたばかりの
Ruby初心者は、最初for構文を使うけど、Rubyを深く知るにに従って
(forよりも柔軟な)オブジェクト指向スタイル、つまりRubyらしい
プログラミングスタイルを身につけていく
0159uy
2012/08/15(水) 16:39:40.590160153
2012/08/15(水) 16:42:30.15メソッドチェインに関しては過去スレで話題になったけど、
最大の利点は左から右へと流れる、自然に読み取れるコードが
書けることだと思う
0161デフォルトの名無しさん
2012/08/15(水) 16:42:44.790162uy
2012/08/15(水) 16:52:58.51普通に書いたら
p [1,2,3].map { |x| x*2 } # => [2, 4, 6]
だけど、メソッド(イテレータ)チェインする事によって、本来配列を返さない
each_with_indexなども
p [1,2,3].each_with_index { |x,i| x*(2+i) } # => [1, 2, 3]
mapを置く事による戻り値を変えられる
p [1,2,3].each_with_index.map { |x,i| x*(2+i) } # => [2, 6, 12]
これをforで書くとこう
s = []
i = 0
for x in [1,2,3]
s << x*(2+i)
i += 1
end
p s
for文とイテレータじゃ力の差が有りすぎて異論の余地すらない
0163153
2012/08/15(水) 17:05:47.91たとえば「あるリストを選別してソートして計算して書き出す」という
お題の場合、以下のような破壊的代入の無い流れるようなコードが書ける
list.select { .... }.sort { .... }.map { .... }.each do; .... end
もしRubyにfor構文しか存在しなければ、一時変数をゴリゴリと更新していく
ループ処理を並べた典型的な手続き型コードになる
0164uy
2012/08/15(水) 17:19:49.470165uy
2012/08/15(水) 17:21:52.02list.select { hoge hoge hoge hoge hoge hoge }.sort { hoge hoge hoge hoge hoge hoge }.map { hoge hoge hoge hoge hoge hoge }.each do; hoge hoge hoge hoge end
となって見難いのである。
だから縦に流れるようなコードにしたほうがいい。
list.select { hoge hoge hoge hoge hoge hoge }
list.sort { hoge hoge hoge hoge hoge hoge }
list.map { hoge hoge hoge hoge hoge hoge }
list.each do; hoge hoge hoge hoge end
0166153
2012/08/15(水) 17:28:12.26文が1行で収まらなければ、改行とインデントを使って
上から下へ流れるコードを書けばいい
工夫すれば、実用的なプログラムでもすべて80桁以内になるよ
list.select {
hoge
hoge
hoge
}.sort {
hoge
hoge
hoge
}.map {
hoge
hoge
hoge
}.each do
hoge
hoge
hoge
end
0167デフォルトの名無しさん
2012/08/15(水) 17:28:58.74[2, 6, 12]
メソッド入れ子でもいいんちゃう?
0168153
2012/08/15(水) 17:44:23.49同じ計算は、Rubyであれば(>>162を少しだけいじって)
左から右へと流れるコードになる
irb(main):001:0> [3,2,1].sort.each_with_index.map { |x, i| x * (2 + i) }
=> [2, 6, 12]
さて、どちらが読みやすいと感じるかな?
0169デフォルトの名無しさん
2012/08/15(水) 17:53:53.310170デフォルトの名無しさん
2012/08/15(水) 17:58:45.010171デフォルトの名無しさん
2012/08/15(水) 18:05:30.280172デフォルトの名無しさん
2012/08/15(水) 18:07:20.330173デフォルトの名無しさん
2012/08/15(水) 18:08:42.47どうみてもPythonのほうが読みやすい
0174デフォルトの名無しさん
2012/08/15(水) 18:15:01.60みたいに続いていく構文が若干分かりにくいんだよね
{}で囲まれてると関数に見えるし
||も引数なのかなんなのか謎だし
まあ慣れなんだろうけど
0175153
2012/08/15(水) 18:21:38.11>>168のRubyコードを第三者へ説明しようとしたら
リスト定数をソートしてから添字付きで列挙し、各要素の計算値で写像する
と、左から右へと流れるコードの構成に沿って記述できる
これはトイプログラムに限らず、>>166のような長く大きなコードでも同じ
さて、>>167を第三者へ説明しようとすれば、どんな文章になるかな?
0177デフォルトの名無しさん
2012/08/15(水) 18:40:16.04一時変数用意すればよいだろ。何の説明も要らなくなるよ。
0178uy
2012/08/15(水) 18:46:19.62はーーー ばぐった
Rubyごみかす
0179デフォルトの名無しさん
2012/08/15(水) 18:46:32.630180デフォルトの名無しさん
2012/08/15(水) 18:58:34.52どっちかっていうとPythonっぽいこっちの文法のままだったんだろうな。きっと。
do [1,2,3].map using x; x*2 end
0181153
2012/08/15(水) 19:14:29.25一時変数は悪ではないし、否定しないよ
実際に実用的なプログラムでは、あまりに長いメソッドチェーンを
途中で切って、間に一時変数を入れることがある
ただし、一度代入したら二度と更新しない
問題は変数の「破壊的代入」
たとえば>>162の最後にあるforを使った手続き型スタイルでは、
最初にリスト変数とループ変数に初期値を代入した後、
forループ内でこれら変数をゴリゴリと更新(破壊的に代入)している
これが可読性の悪化とコード品質の低下をまねく要因
なお破壊的代入の無さは、専門用語だと「参照透明性」と呼ばれる
0182デフォルトの名無しさん
2012/08/15(水) 19:25:04.95表面のコードに表れて無いだけで、結局mapの中で破壊代入しているのだから、一緒だよ。
書いてある場所が違うだけで、本質的な動作が同じなのだから、危険度も同じ。
0183uy
2012/08/15(水) 19:34:44.27自分で直に破壊的操作を行う処理を書くのは全然危険度が違うよ
0184デフォルトの名無しさん
2012/08/15(水) 19:39:26.70破壊的代入は全てライブラリにやってもらえば安全なのだから。
0185uy
2012/08/15(水) 19:43:25.260186デフォルトの名無しさん
2012/08/15(水) 19:45:30.24ブロック内の処理が一つの場合は{}で複数処理はdo end がいいってじっちゃが言ってた
0187uy
2012/08/15(水) 20:20:56.63数学でも長い式を
一時変数に代入するのにな。
0188デフォルトの名無しさん
2012/08/15(水) 20:22:00.55ってやったら外人に笑われた
なんで?
0189uy
2012/08/15(水) 20:38:54.520190デフォルトの名無しさん
2012/08/15(水) 21:01:43.68lolはlaugh out loudlyで(笑)と同じように使われるから、笑えよってことだね。英語圏のコミュニティ行くとよくあるよ。
0191デフォルトの名無しさん
2012/08/15(水) 21:10:40.01数学の素養が無いって自己紹介してることに気付いてないの?
かっこわるいから控えた方が良いよ
0192デフォルトの名無しさん
2012/08/15(水) 21:13:01.310193uy
2012/08/15(水) 21:19:39.91でも、実際に読みづらいんだろう?
0194デフォルトの名無しさん
2012/08/15(水) 21:27:25.15高階関数を記述できる分だけ汎用性があるが、
mapとかfilterとかの組み合わせに関してはリスト内包表記のほうが簡潔になりうる
細かい優劣はあれど、matzは内包表記みたいな専用構文を用意するのを嫌った
PythonあるいはHaskellその他のように、頻出する記述に糖衣構文を与えるのは間違っていないと思うが、
Rubyはそれよりもブロック構文による均質性を採ったという事
0195デフォルトの名無しさん
2012/08/15(水) 21:40:16.38そしたらもっと簡潔にも均質にもなったのに。
0196デフォルトの名無しさん
2012/08/15(水) 21:50:52.54数学の内包表記は読みやすいからPythonのも読みやすいみたいな論法はちょっとしっくり来ないな
0197153
2012/08/15(水) 21:57:54.67自分は内包表記が読み難いとは思わないね
ただしPythonの場合、局所宣言またはクロージャがないから
せっかくの内包表記構文が台無しになっている
過去スレ19,20で議論になったコードを以下に示す
==== Haskell ====
data Option a = None | Some a
ys = [fn x | x <- xs]
where fn x =
let
h = if is_first_page x then generate_header else None
b = generate_body x
f = if is_last_page x then generate_footer else None
in
(h, b, f)
Haskellには局所宣言としてwhere節があるから、関数fnを定義することで
内包表記を含む式をトップダウンに数学っぽく記述できる
==== Python ====
ys = (Document.new(h,b,f) for x in xs
for h in [generate_header() if x.is_first_page else None]
for b in [generate_body(x)]
for f in [generate_footer() if x.is_last_page else None])
このPythonコードが何をしているかどうか、はたして一目で把握できるかな?
0198153
2012/08/15(水) 22:01:18.03==== Ruby ====
ys = xs.map { |x|
h = if x.first_page? then generate_header else nil end
b = generate_body x
f = if x.last_page? then generate_footer else nil end
Document.new h, b, f
}
Rubyには内包表記構文は無いけれど、普通に書ける(実に初歩的なコードだ)
0199uy
2012/08/15(水) 22:05:42.94h = generate_header if x.first_page?
b = generate_body x
f = generate_footer if x.last_page?
だろ
falseだろうとローカル変数は宣言されるから
0200デフォルトの名無しさん
2012/08/15(水) 22:07:42.58HaskellもPythonも使えるから
どっちも楽勝で読める
あとHaskellならそのケースだと内包表記じゃなくて map fn xs だな
短いし読み易い
0201デフォルトの名無しさん
2012/08/15(水) 22:08:07.08確かGroobyはそういう仕様だったから、整合性は何とかなるんだろうけど
実際問題として誰も困ってないんじゃないの
ブロックがリテラルとして書けたとしても、どっちみちブロック付きメソッド呼び出しの時は
ブロックを特別扱いする構文を認めることになるから、特段簡潔になるというほどでも……
いわゆる無名関数を直接操作したいならブロック(Procオブジェクト)ではなくてlambdaが適当で
lambdaに関しては1.9から糖衣構文が入った
0202uy
2012/08/15(水) 22:09:14.11現在のrubyに>>197
こういうの導入すれば、開発効率は一時的に上がるけど
低脳プログラマは優秀なプログラマが管理してやらないと
意味不明なコード書いて自滅するから
全体パフォーマンスを見れば入れるべきでないものもある
0203デフォルトの名無しさん
2012/08/15(水) 22:13:47.89どっちにしても、酷いコードだ。
0204デフォルトの名無しさん
2012/08/15(水) 22:16:27.85イテレータやループの書き方は統一されてたほうが良い
0205デフォルトの名無しさん
2012/08/15(水) 22:17:50.65内包表記が多段ネストし始めるのはさすがに勘弁して下さいっていうか
読むのも書くのも面倒じゃない?
Haskellはまだwhere節で後ろに押しこみ直すことでトップダウンに読めるから
場合によっては許せるかなあと。少なくとも適切な変数名が条件w
0206デフォルトの名無しさん
2012/08/15(水) 22:22:51.19複数になったときじゃねーの
f n = [(x,y,z) | x <- [1..n], y <- [1..n], z <- [1..n], x^2 + y^2 == z^2]
0207デフォルトの名無しさん
2012/08/15(水) 22:31:21.07どうして? ブロックがファーストクラスなら yield や &block なんて小細工いらなくなるし、
複数のブロックを引数として簡単に渡せるから表現の幅も広がるし、
機能も意味もずっと簡潔になると思うよ。
0208デフォルトの名無しさん
2012/08/15(水) 22:32:31.13Pythonってそんな誰得非効率機能が特徴なの?ウンコやん。
ついでにRubyもウンコやん。
ラムダ式とかevalが使えんコンパイル言語がなんちゃってevalを実装してるようにしか見えん。ウンコやん。
0209デフォルトの名無しさん
2012/08/15(水) 22:42:15.44もっと具体的に実現例を出してもらわないと
よく分からない
0210デフォルトの名無しさん
2012/08/15(水) 22:48:10.24このスレで議論する価値無い
Java以下のウンコの中のウンコ
0211デフォルトの名無しさん
2012/08/15(水) 22:52:50.85def preprocess(x):
h = generate_header() if x.is_first_page else None
b = generate_body(x)
f = generate_fotter() if x.is_last_page else None
return h, b, f
ys = [Document(preprocess(x)) for x in xs]
じゃないかと。まずリスト内包で書くことはない
0212uy
2012/08/15(水) 22:53:01.740213デフォルトの名無しさん
2012/08/15(水) 23:10:42.330214デフォルトの名無しさん
2012/08/15(水) 23:59:55.09- 複数のブロックをとるメソッド呼び出しを簡潔に書ける
[1,2,3].find(lambda{ :not_found }){ |e| e>5 }
[1,2,3].find { :not_found }, { |e| e>5 }
- ブロックをレシーバーにできる
lambda{ :do_something }.should_not raise_error
{ :do_something }.should_not raise_error
- ブロックをとるメソッドの仮引数に前置&が不要になる
def meth(&block); other(&block) end
def meth(block); other(block) end
0215デフォルトの名無しさん
2012/08/16(木) 00:05:36.35ちょっと病気ですよ
Rubyってそういう言語かもしれないけど
0216デフォルトの名無しさん
2012/08/16(木) 00:06:27.09付け足す事もあるけど、途中の処理の内容を変えたり、途中で処理を分岐する事もあるよね?その場合、一時変数を使ってる方がやりやすくない?
0217デフォルトの名無しさん
2012/08/16(木) 00:11:36.22Perl代替で一番成功してるのはPythonじゃない?
Rubyの場合、作者の思惑はともかく、現状はほぼRails専用と言っていいのでは。
Railsを便利に使うためのツールはいろいろあるけど、OSだったりミドルウェアから使うようなRuby製のツールってPerlやPythonと比べて全然無いでしょう。
0218デフォルトの名無しさん
2012/08/16(木) 00:18:16.38>- 複数のブロックをとるメソッド呼び出しを簡潔に書ける
そういう部分でメソッド引数括弧の省略を使うのは筋悪でしょ
現在のRubyのコーディングスタイルでも、引数がある場合は原則省略しないのが主流
あるいは括弧を省略しない場合、確かにルールは単純だけど見栄えがよろしくない
hoge({|x| p x })
そしてブロック構文の仮定として
大部分の高階関数は関数引数を一つしか取らないという
観察結果があるわけだから、一つに特化した構文でも十分
0219デフォルトの名無しさん
2012/08/16(木) 00:35:02.92ここで小物と表現していたのは、ツールと呼ぶのもおこがましいほど小さい
日常の雑務を処理するような小規模スクリプトだよ。ワンライナーも含む
例えばRubyに大量に残ってるPerl譲りの特殊変数とか、
外部コマンドのためにリテラルとか、インタプリタの変な起動引数とか、
色々あるが、おそらく全部そういう小物のためのもの
0220デフォルトの名無しさん
2012/08/16(木) 00:43:48.75しかし関数型言語で圧倒的に利用頻度の高い
関数合成は関数引数を複数取る関数なんだよね
(.) :: (b -> c) -> (a -> b) -> a -> c
Rubyではブロックとブロックを合成して
新しいブロックを作りたくなることは無いの?
xs.map(f).map(g).map(h) を
xs.map(f.g.h) と書けたら良いと思わない?
0221uy
2012/08/16(木) 01:00:12.30言語が複雑なことやってるから、実装もバグ取るのも大変なんだろうし
俺が普通じゃないコード書いてるからなんだけど
バグ多すぎてワロタwwww
今日だけで2個踏んだったwwww
なんでだろ、世界でずいぶん使ってる奴いるはずなのに、
俺はもういままでrubyのバグには自分で出したのだけで少なくとも10個以上
どうなってるのこの言語 とりあえずlambda周りとハッシュ周りに何かがある・・・
0222デフォルトの名無しさん
2012/08/16(木) 01:02:21.44Rubyのパーサはどうもならん
0223デフォルトの名無しさん
2012/08/16(木) 01:11:31.940224デフォルトの名無しさん
2012/08/16(木) 01:19:03.05201,209が「簡潔にならない」「具体例がないと分からない」というから挙げた例に
横からしゃしゃり出てきて一例だけピックアップして筋悪とか十分とか
結論ありきの難癖つけるってなんなのあんた?
0225uy
2012/08/16(木) 01:20:06.45俺俺。俺だよ。
0226デフォルトの名無しさん
2012/08/16(木) 01:29:22.600227uy
2012/08/16(木) 01:30:59.89ひとつは普通に[BUG]ってでた これはlambda周りのバグ
もうひとつは、これはハッシュ周り [BUG]とはでないが、
存在しているはずの変数の中身が一定確率で(1度のイテレーションのみ?)だけ勝手にnilになってる
nil => nil のハッシュなんか追加した覚えないのに両方nil
とりあえずイテレータでまわしてる時に中でこれをやってはいけないっぽい
task = Hash.new
task.marge(...)
task.each do
task = 新しいハッシュ
end
これをどうにかなくしたらバグらなくなった
いずれも小さなコードで再現させようとしてもバグってくれない
俺がわけわからんコード書いてるせいもあると思う もういやだ
0228デフォルトの名無しさん
2012/08/16(木) 01:35:09.09中級者はバグを回避するコード書くのがあたりまえっえこと。
0229uy
2012/08/16(木) 01:35:37.63[BUG]というのは
テメーのバグっていう意味だよw
0231デフォルトの名無しさん
2012/08/16(木) 01:42:31.92危ないだろうJK。Rubyに限らずどの言語でもご法度。
0232デフォルトの名無しさん
2012/08/16(木) 01:43:59.81この一例が重要だから214が例示して、218が反論したんだよ
もしブロックが単独のリテラルだったなら
1. Procを簡潔に記述できる
2. ブロック構文に関わる一連の糖衣構文(yield、&block、)が
通常のメソッド引数括弧の省略という形で統一的に記述できる
3. またこの枠組みでは複数の関数引数の記述も自然にできる
それに対する反論が
1. 関数型スタイルを使いたいならProcではなくてlambdaでいいじゃん(糖衣構文がある)
2. メソッド引数括弧の省略に頼った記法は良くないとされている
逆に省略しないと記述が煩雑になる。つまり専用構文を用意するのがベター
3. 複数の関数引数は出現頻度が低いことが分かっているから重要でない
むしろ一引数に特化している事が重要 →再反論:関数合成のような例は?
っていう議論なんだから
0233uy
2012/08/16(木) 02:12:27.19バグがあっても使う価値があるくらいには最強
0234デフォルトの名無しさん
2012/08/16(木) 08:15:45.11http://engawa.2ch.net/test/read.cgi/poverty/1345036192/
韓国旅行者向けの新カード発行延期 三井住友カード
三井住友カードは15日、韓国に旅行する日本人向けに予定していた新たなカードの発行を延期すると発表した。
提携する韓国のカード会社と22日にソウル市内で記者発表会を計画していたが、これも延期する。
韓国の李明博(イ・ミョンバク)大統領の竹島上陸や対日批判などを考慮し、「今サービスを始めるのはふさわしくない」(広報室)
と判断したという。
このカードは、旅行前に日本円で入金しておけば、韓国のお店で韓国ウォンでの支払いができるプリペイド式で、9月上旬から
発行する予定だった。記者発表会は、日本でも人気の高い韓国人俳優らが出席する計画だった。
http://www.asahi.com/business/update/0815/TKY201208150428.html
0235153
2012/08/16(木) 10:04:35.58ん、最終行にはリスト内包表記が見えるけど、気のせいかな?
それはさておき、Pythonでは「ごく普通に」関数を定義して適用するのに対して、
Ruby(および関数型言語)では「ごく普通に」ブロックや無名関数を使って
シンブルな式として表現できる、ということになった
また当たり前だけど、>>211のような関数を定義するコードはRubyでも書ける
これは>>197,198で述べたように、関数型言語風プログラミングにおいて
局所宣言が無いというPythonの欠点、そしてRubyの優位性を示している
0236デフォルトの名無しさん
2012/08/16(木) 11:03:14.550237デフォルトの名無しさん
2012/08/16(木) 11:05:52.40Rubyは関数内関数を素直に定義できないじゃん
Proc と lambda の違いとかキモイし
どさくさにまぎれて関数型言語と一緒にすんなよ
0238デフォルトの名無しさん
2012/08/16(木) 11:45:22.78あるアドレスに下記の様にHTTPヘッダー関数で移動すると返ってくる内容がブラウザに表示されるのですが
header("Location: {$add}") ;
file関数、fgets関数等で下記の様に読み込むと中身がカラッポで入っていません
$data = '' ;
if ($fp = @fopen($add, "r")) {
while (!feof($fp)) $data .= @mb_convert_encoding(fgets($fp, 1024), "EUC-JP", "auto");
fclose($fp);
}
$data = htmlspecialchars($data);
file関数、fgets関数等で読み込んで中身を得るにはどうしたら良いでしょうのでか
教えて頂ける様お願いします
0239238
2012/08/16(木) 12:26:57.50if ($fp = @fopen($add, "r")) {
↓
if ($fp = fopen($add, "r")) {
そしたら次の様なワーニングが出てきました
『
Warning: fopen(アドレス) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.0 403 Forbidden in 動いてるスクリプト on line 374
』
どうもアクセス相手側から拒否されている様です
しかしヘッダー関数では取得できる様なのでどうにかしてfile関数等でデータを取り込みたいのですが
どうしたら良いかご存知のかたいらっしゃったら教えて頂ける様お願いします
0240デフォルトの名無しさん
2012/08/16(木) 12:30:36.27WebProg
http://kohada.2ch.net/php/
0242uy
2012/08/16(木) 14:10:29.16メソッド揃えば完全変換できるかもよ
procのlambda違いは有りなんだよ
rubyは同じに見えて微妙に違う動作をするメソッドが数多く存在する
それだけ細かい調整が標準ライブラリで効くってこと
0243153
2012/08/16(木) 14:13:16.73>Rubyは関数内関数を素直に定義できないじゃん
エッ!、Rubyは普通に関数内関数を定義できるよ???
以前(1.8)は関数内関数のスコープに問題があったけど、今(1.9)では解消されたし
・メソッド定義のネスト - Ruby 1.9.3 リファレンスマニュアル
http://doc.ruby-lang.org/ja/1.9.3/doc/spec=2fdef.html#nest_method
というか、OOPLであるRubyでは、プライベートメソッドとして定義するのが一般的で、
関数内関数はまず目にすることはない
しかも(>>211のPyhtonのような)他LLでは関数定義を「普通」に使うけど、
Rubyならブロックがあるから一度しか適用しない関数は式の中に埋め込むのが「普通」
つまり、(関数内関数を多用せざるをえない他LLと違って)関数内関数を使う頻度は少ない
>Proc と lambda の違いとかキモイし
確かにProcとlambdaの微妙な差異は分かりづらいよね
でもRubyにはブロック構文があるから、(Procやlambdaのような)明示的な無名関数宣言を
使う頻度は比較的少ないし、使うケースでもどちらか一方を使えば済むことが多い
また、言語の微妙な弱点を避けて、良い点を引き出すことに注力することが
(Rubyに限らず)中級プログラマのたしなみの一つだと考える
>どさくさにまぎれて関数型言語と一緒にすんなよ
え、一度も「Rubyは関数型言語である」とは言ってないけど.....???
「関数型言語風プログラミングには(他LLよりも)Rubyは明らかに優れている」と主張している
0244デフォルトの名無しさん
2012/08/16(木) 14:25:57.61> エッ!、Rubyは普通に関数内関数を定義できるよ???
はあ?じゃあ何で関数内関数が外から見えてんだよ
http://ideone.com/4J057
0245デフォルトの名無しさん
2012/08/16(木) 14:42:18.11関数型言語でも関数内関数を多用するけど...?
「関数型言語風プログラミング」って何?
それってただの「Ruby風プログラミング」なんじゃないの?
0246uy
2012/08/16(木) 14:43:56.36それは結局selfが省略されているに過ぎない
rubyはすべてがオブジェクトであり、インスタンスは特異メソッドをもつ事が出来る
self.define_singleton_method :uy do
p :uy
end
お前らの大好きなシングルトン
でもこの設計はゴミカスだな
俺様個人の意見を言わせてもらうならdef内のdefは使わないほうがいいよ
普通にlambdaで ->{ } 書いたほうが短いんだからそっち使えばいいじゃん
0248153
2012/08/16(木) 14:50:55.63わざわざideon上のコードを引用しなくても、Rubyの振る舞いは>>243で示した
リファレンスマニュアル「普通のメソッド定義式と同じ」の通りだよ???
確かに、理想的には内側のメソッドが外部から隠蔽されたほうが望ましいことは認める
これが>>211のPythonコードのように、関数定義を多用するのが「普通」、
あるいは関数定義を多用「しなければならない」言語であれば、致命的な欠陥になる
でも>>243で述べたように、Rubyでは関数内関数の必要性がほとんど存在していないんだ
もしも可能であるならば、ブロックやプライベートメソッド定義では読みづらかったり
冗長だったりするけど、関数内関数であれば素直に表現できるコード例を示してほしいなあ...
0249デフォルトの名無しさん
2012/08/16(木) 14:57:03.42do 〜 endって、でてきたらそれ全部関数だよ
0250デフォルトの名無しさん
2012/08/16(木) 15:03:34.35関数型言語と違うスタイルなんだから「関数型言語風プログラミング」とか言うなよ
0251デフォルトの名無しさん
2012/08/16(木) 15:07:46.32理想的にはじゃなく、ここが一番大事なところ
0252uy
2012/08/16(木) 15:08:18.16proc
Proc.new
lambda
->{ }
def
define_method
define_singleton_method
Module.new / Class.new / Struct.new
こんくらいかな?メソッド内で関数のようなものを定義する方法
動作違うものが、これだけあるんだから動作調べて好きなの使えよ?
defしか使えないバカなの?
0253デフォルトの名無しさん
2012/08/16(木) 15:23:14.80> もしも可能であるならば、ブロックやプライベートメソッド定義では読みづらかったり
> 冗長だったりするけど、関数内関数であれば素直に表現できるコード例を示してほしいなあ...
なんだ、読みづらさや冗長さの観点で批判してたのか?関数型うんぬんは関係なく?
じゃあ>>198に比べて>>211は読みづらくて冗長だからダメって言いたいんだな?
そういうことは最初から言えよ
0254デフォルトの名無しさん
2012/08/16(木) 15:35:35.200255153
2012/08/16(木) 15:41:10.73>関数型言語でも関数内関数を多用するけど...?
うん、関数型言語では関数内関数でプログラムを構築していくのが普通だね
でもRubyはオブジェクト指向言語であり(>>243の最後で書いたように)関数型言語ではないから、
モジュールやクラスでプログラムを構築するのが普通なんだ
>「関数型言語風プログラミング」って何?
「(破壊的代入を含む)副作用を避けた参照透明性のあるプログラミング」(>>181も参照)
これは関数型言語のパラダイムと同じ
もちろん(関数内関数ではない)Rubyでは、入出力や効率(性能や資源)といった理由から
完全に参照透明性のあるコードは書けないけど、それでも副作用を極力避けたり、
参照透明性のある部分とない部分を意識的に使い分ける、あるいは副作用のあるコードを隠蔽する
現実に実用的なテキスト処理プログム開発で試したところ(全体で約20Kstep)、
8割は参照透明性のあるコードで実装することが可能だった
残る2割の部分は、トップレベルの(入出力を含む)メイン処理モジュール群と
最下層の副作用をカプセル化(隠蔽)した内部ライブラリ群になる
0256avacript
2012/08/16(木) 16:27:56.11rubyとか
0257uy
2012/08/16(木) 16:51:25.730258デフォルトの名無しさん
2012/08/16(木) 16:55:24.10日本製ソフトのシェアはゼロに等しいよね。
0259153
2012/08/16(木) 16:57:54.51>関数型言語と違うスタイルなんだから「関数型言語風プログラミング」とか言うなよ
うん、ググってみたら確かに「関数型言語風プログラミング」は風変わりだった
では、一般的な「関数型プログラミング(functional programing)」と改めよう
0260153
2012/08/16(木) 17:09:48.97>理想的にはじゃなく、ここが一番大事なところ
そう、クロージャやまともなラムダ式の無いPythonのような手続き言語における
関数型プログラミングでは、関数内関数こそが一番大事だよね
Rubyはというと、(>>248で書いたように)OOPLでブロックがあるからそれほど大事じゃないけど....
0261デフォルトの名無しさん
2012/08/16(木) 17:15:09.50メソッド定義は
@method = def 1; end
こんな感じの文法でよかったんだよ。
func = def 1; end
こう書けばfuncはローカル変数だから外から見えないし。
同じようなものが一杯ありすぎる。
C++みたいに厳しいパフォーマンスが求められるってわけでも無いのにさ。
こんな行き当たりばったりな言語を良しとしている人は、
さぞプログラムも行き当たりばったり何だろうな。
かといって、ラムダの弱いPythonは土俵にすら立ててないのだが。
普及しててまともなLLって無いのかね。
もしJSにブロックスコープがあったなら、かなり良い言語になりえたんだがな。
0262uy
2012/08/16(木) 17:42:47.29おいバカ
これ
lambda ↓
->{ }
これlambda
0263デフォルトの名無しさん
2012/08/16(木) 17:43:38.980264デフォルトの名無しさん
2012/08/16(木) 17:48:13.46なんとかラムダで書こうとするのは、どの言語でもCみたいなコードを書く奴と何も変わらん
0265153
2012/08/16(木) 17:59:30.07>ラムダの文法を def 1; end にして、 ....(以下、省略)
構文の簡潔さという意味では、>>83で紹介したSML(Standard ML)が理想に近いのではないかと
【ラムダ式】 fn hoge x y = <expr>
【条件分岐式】 if <expr1> then <expr2> else <expr3>
【多分岐式】 case <expr> of <pat1> => <expr1> | <pat2> => <expr2> | ....
【代入(束縛)】 val x = <expr>
【関数定義】 fun fuga x y = <expr>
【局所宣言式】 let val x = <expr> fun fuga x y = <expr> in <expr>
【モジュール定義】structure bar = struct <declarations> end
構文要素が必ず予約語で始まっていることがポイントになる
また ;(セミコロン)は演算子であり、式「a ; b」は(aを捨てて) b の評価値を返すという意味になる
結果として言語仕様はコンパクトにまとまっているので習得が容易であり、
しかも言語全体の公式な形式的定義が存在するという特異な存在となっている
・Amazon.co.jp: The Definition of Standard ML: 洋書
http://www.amazon.co.jp/The-Definition-Standard-Robin-Milner/dp/0262631814/
>もしJSにブロックスコープがあったなら、かなり良い言語になりえたんだがな。
これは同感だね
さらに条件分岐(if や switch)が文(statement)ではなく式(expression)であることも大切だと思う
0266デフォルトの名無しさん
2012/08/16(木) 18:07:02.49内から外へのスコープを区切るものは関数しかない、という単純さが損なわれる。
クロージャがあるからそれだけでも既にややこしくなってるのに。
0268デフォルトの名無しさん
2012/08/16(木) 18:35:16.39大声張り上げて街中をデモ行進する人は宇宙空間にでも行って欲しい。
0269153
2012/08/16(木) 18:39:03.55ブロックスコープをスコープと早合点していた
0270デフォルトの名無しさん
2012/08/16(木) 18:42:06.27Closures in Python (part 1)
http://ivan.truemesh.com/archives/000392.html
>(ie. use a "list comprehension" - I think it reads a bit easier than using the map/lambda).
0271153
2012/08/16(木) 18:53:18.70リンク先を眺めたけど、これらの例というのは(説明も何も無いから)
RubyでもPyhtonでも同レベルで簡潔に書けるコードに見える
これらの例について、いかにPythonが優れているかを「>>270自身の言葉で」語って欲しい
あるいは>>197,198のように、明らかにPythonが優位性であることが分かる例を希望する
これじゃバトルにならんのだよ....
0272デフォルトの名無しさん
2012/08/16(木) 18:54:43.69別にRubyが劣ってるなんて言ってないよ
馬鹿が譫言のようにクロージャクロージャと連呼してたから
ああ、こいつはPythonのことをあまり知らないんだなあ、と思っただけ
0273デフォルトの名無しさん
2012/08/16(木) 18:55:24.500275デフォルトの名無しさん
2012/08/16(木) 18:56:16.680276153
2012/08/16(木) 19:00:35.26では、そのPythonのクロージャとやらを使って、>>211を書き直して欲しい
Pythonにはクロージャがあるから、関数定義無しに書けるよね?
0277デフォルトの名無しさん
2012/08/16(木) 19:01:46.12それに伴うライブラリの充実とかコミュニティの活発さはあるね
0278デフォルトの名無しさん
2012/08/16(木) 19:02:19.29勝手にルール作ってるところがおかしい
0279デフォルトの名無しさん
2012/08/16(木) 19:02:23.310280デフォルトの名無しさん
2012/08/16(木) 19:05:32.800282デフォルトの名無しさん
2012/08/16(木) 19:09:59.700283デフォルトの名無しさん
2012/08/16(木) 19:12:19.57そりゃ明らかに面倒だろ。
いまどき、あのC++にすら無名関数やラムダがあるのに。
あの保守的なC++が取り入れたんだよ?
しかも文法を [&](int i)-> int { return i; } って糞キモくしてまで取り入れた。
今までのC風の関数のスタイルを捨ててまで、取り入れたんだよ。
今までになかったこと。それぐらい無名関数やラムダは求まれた。
int func( int i ){ return i; }
これが
auto func = []( int i ) -> int { return i; }
こんなになっちゃったんだよ。こんなに見た目が変わったんだよ。
それを受け入れたんだよ、あのC++er達が。その意味を考えろ。
0284デフォルトの名無しさん
2012/08/16(木) 19:15:38.78いや上の例を見ても明らかとは思えないけど
別にC++erだって全ての関数をラムダ式で書くわけもなく、普通に関数定義するし
0285デフォルトの名無しさん
2012/08/16(木) 19:21:31.64普通の関数もかけるのは当たり前で、
それだけじゃつらいからラムダを導入したって話だろ。
論点ずれてるだろ。何言ってんだか。
ラムダが要らないものならわざわざ変な文法作ってまで導入するかよ。
0286デフォルトの名無しさん
2012/08/16(木) 19:23:37.43上のはラムダで書くべき例なの?
0287153
2012/08/16(木) 19:26:19.29あらゆる関数型言語であれば関数定義無しにかけるから、
それは「関数型プログラミング」の特徴の一つである、という理屈
だってPythonだけが関数定義が無ければ書けないんだから、
マイナス評価されても当然だろ?
というかさ、もしルールに不満があるならそれを最初に主張すべきだった
具体的には、>>235の指摘に対して即座に反論すればよかったのに....
いろいろゴネたあげく、技術論で反論できないからルールに不満を言うのは
カッコワルイと思うよ
0288デフォルトの名無しさん
2012/08/16(木) 19:29:06.48つまり、実用上では何の意味もない所で優劣を競ってるのか?
0289デフォルトの名無しさん
2012/08/16(木) 19:30:21.570290デフォルトの名無しさん
2012/08/16(木) 19:30:51.67あんな変な文法にしてまで、無理にでも導入したんだぞ。
0291デフォルトの名無しさん
2012/08/16(木) 19:36:11.33C++がさらに糞言語化したからラムダは有用!とか言わなくてもさ
0292デフォルトの名無しさん
2012/08/16(木) 19:42:16.59で?もっと身のある話はないのかよ
0293デフォルトの名無しさん
2012/08/16(木) 19:55:52.820294デフォルトの名無しさん
2012/08/16(木) 20:14:22.38あれ?お前>>255でRubyはOOPLだから関数内関数無くても良いんだとか
言ってなかったっけ?
関数型言語では関数内関数あるんだからRubyではdefの入れ子で
関数内関数が定義できないのはマイナス評価されても良いの?
0295デフォルトの名無しさん
2012/08/16(木) 20:16:11.07[Python-ideas] a new lambda syntax
http://mail.python.org/pipermail/python-ideas/2009-October/006208.html
めぐりめぐってGuidoのコメント
http://mail.python.org/pipermail/python-ideas/2009-October/006306.html
# http://mail.python.org/pipermail/python-ideas/2009-October/006228.html のコードをもとに
ys = [Document(lambda{
h = generate_header() if x.is_first_page else None
b = generate_body(x)
f = generate_fotter() if x.is_last_page else None
return h, b, f}) for x in xs]
こういうコード書く人が出てくるからやめたほうがいいね
0296uy
2012/08/16(木) 20:16:17.97ゴミ
0297デフォルトの名無しさん
2012/08/16(木) 20:18:08.51(2)関数を定義したら冗長になってしまうほど短い
そんな例題があればいいんだよ
0298デフォルトの名無しさん
2012/08/16(木) 20:22:49.99都合の悪いレスはスルーするというゴミっぷり
ゴミの中のゴミ
0299uy
2012/08/16(木) 20:23:21.310300デフォルトの名無しさん
2012/08/16(木) 20:24:33.390301uy
2012/08/16(木) 20:33:38.400302デフォルトの名無しさん
2012/08/16(木) 20:38:52.330303デフォルトの名無しさん
2012/08/16(木) 20:42:02.02いやいや、スレ読んでみたら、>>211に対して後付けで
関数定義はダメって言い出してるけど?
後付けでルールを追加するのってカッコワルイね
0304uy
2012/08/16(木) 20:53:09.03しかしそれをマイナス点にしても最強なのだった
0305デフォルトの名無しさん
2012/08/16(木) 20:57:19.930306153
2012/08/16(木) 21:05:50.99不公平だと思うから、それ以外の関数型言語のコード例について、過去スレ19,20からコピペする
なお、このコードは>>286氏ご希望のラムダ式で書く典型的なコード例となる
==== Standard ML ====
datatype 'a Option = None | Some of 'a
val ys = map (
fn x =>
let
val h = if is_first_page x then generate_header else None
val b = generate_body x
val f = if is_last_page x then generate_footer else None
in
(h, b, f)
end
) xs
同等な多言語のコード例については以下を参照
・Haskell >>197上段
・Python >>197下段および>>211
・Ruby >>198
0307デフォルトの名無しさん
2012/08/16(木) 21:10:23.550308デフォルトの名無しさん
2012/08/16(木) 21:10:42.85話を引っ張る空気読めないっぷりがウケるw
0309uy
2012/08/16(木) 21:15:05.50同じ奴なんですか?
0310153
2012/08/16(木) 21:19:31.47>関数型言語では関数内関数あるんだからRubyではdefの入れ子で
>関数内関数が定義できないのはマイナス評価されても良いの?
正確には「関数内関数定義で内部の関数が外部から隠蔽されない」だね
もちろんこの点はRubyのマイナス評価であると認めるよ
また、アンカも間違いで(>>255ではなくて)>>243じゃないかな?
さらに言えば、>>297自身も(>>243,248から)引用しているように、
このマイナス評価はRubyにとっては致命的な欠点ではない
もしも致命的ではないという意見が不満ならば、
>>248の最後でリクエストしたように具体的なコードで語って欲しい
論よりコードだ
0311デフォルトの名無しさん
2012/08/16(木) 21:23:03.20> もしも致命的ではないという意見が不満ならば、
Pythonの関数定義が致命的だって話は何時同意を得たんだ?
少なくとも>>211は関数定義で全く問題ない
せめて>>297を満たす御題くらい作れよ
論よりコードなんだろ?
0312デフォルトの名無しさん
2012/08/16(木) 21:23:21.86Pythonユーザなら誰も書かないようなコード貼っといて論よりコードは流石になかろう
0314デフォルトの名無しさん
2012/08/16(木) 21:23:47.98でも関数型言語スレって盛り上がらないんだよな。TIOBEのランキング見れば分かるけど
そもそも利用者が少ない。LispはまだしもHaskellとかMLとかは、マイノリティすぎる
結局、関数型言語としての評価軸って対して価値がないのかなと思う
まあノイジィマイノリティのノイジィ具合は全てのパラダイムの中で群を抜いてるだろうけど
それに対応してRuby、Pythonその他の言語にも導入されてる機能もあるし
導入された分は使える範囲で使えればいいと思うし、それで足りないなら関数型言語を使うしかないけど
そういう選択をする人が少ないのも事実で、関数型言語でなければならないという観点は間違ってる気がする
0315153
2012/08/16(木) 21:33:07.50リスト内包表記(Haskell: >>197)にせよラムダ式(SML: >>306)を使うにしても、
関数型言語プログラマであれば「再利用されないコード断片」は
関数定義無しでも書けるのは「常識」なんだから、そんなルールはわざわざ書かなかった
今の議題は「LLにおける関数型プログラミングの適性比較」なんだよ
0316デフォルトの名無しさん
2012/08/16(木) 21:34:19.080317デフォルトの名無しさん
2012/08/16(木) 21:34:28.89さすがに突っ込ませてもらうわ。
とりあえず君は関数型言語の巣へ帰った方がよいね。
0318デフォルトの名無しさん
2012/08/16(木) 21:35:10.02(笑)
0319uy
2012/08/16(木) 21:36:45.56あ、やっぱあいいや
0320デフォルトの名無しさん
2012/08/16(木) 21:48:26.95> I believe that the main reason
> people keep arguing for anonymous blocks (and this will never stop) is
> simply that there is **a certain segment of the programmer** population
> that is used to solving a large variety of problems with anonymous
> blocks and that **they don't want to learn how to solve each of those
> cases using the existing tools in Python.** (強調引用者)
どう考えても>>153そのものです。本当にありがとうございました
0321153
2012/08/16(木) 21:49:45.82では、議題(>>315)に沿った「Pythonユーザなら誰でも書くコード」を提示しなさい
>>272氏がPythonにもクロージャは存在すると指摘してくれたので
>>276でコード例をリクエストしてレスを待っているんだけどな....
残念ながら、今のところ具体的なPythonコードを書いてくれたのは>>211一人だけだ
過去スレ19,20でも結局は一人だけだったし、もしかして同じ人かなあ....
0322デフォルトの名無しさん
2012/08/16(木) 21:51:22.33こんなスレで関数型言語アピールとかアホとしか思えん
関数型言語が好きなら黙って使ってろっての
0323デフォルトの名無しさん
2012/08/16(木) 21:52:27.55なんか前もお前の間違いを訂正したのは
「ああ、そうなんだ、ふうん。でも俺の主張は間違ってない。じゃあこのお題はどうよ?」
みたいな対応しかしなかったし、関わるだけ無駄。関数型云々について、いつまで続けるんだ?
もう結論出して良いよ。それでLLの優劣なんて何も決まらんから
0324デフォルトの名無しさん
2012/08/16(木) 21:52:32.060325デフォルトの名無しさん
2012/08/16(木) 21:53:32.53まず議題が承認されてないじゃん
というかPythonいけてねえって主張するあなたのほうに立証責任がある
「なんでPythonで(名前つき)関数定義するのがよろしくないのか」を示すべき
0326デフォルトの名無しさん
2012/08/16(木) 21:55:05.79このスレで何をしたいのかは理解できない
0327デフォルトの名無しさん
2012/08/16(木) 21:57:21.87関数型は効率というベクトルからは外れた趣味だもんな
0328デフォルトの名無しさん
2012/08/16(木) 22:02:23.59あの糞みたいな、ネスとスコープの仕様をつつけば良いのに。
あれだけは生粋のパイソニストでも擁護不可能だからね。
擁護しようものなら、
今になってnonlocal追加した事実に反してしまうしな。
0329デフォルトの名無しさん
2012/08/16(木) 22:02:35.370330デフォルトの名無しさん
2012/08/16(木) 22:06:00.91しかも外国VS国内みたくなってるから余計に。
他の言語は大体用途が被らないし、
その用途でのスタンダードを確立しているものばかりだからな。
shとJSで喧嘩するのは無理。
0331デフォルトの名無しさん
2012/08/16(木) 22:07:22.74nonlocalの追加は、リストにする手間が省けたという意味では確かに改善だけど
スコープ自体は問題なくね。だからこそnonlocalが要るんだし
0332153
2012/08/16(木) 22:08:05.65>せめて>>297を満たす御題くらい作れよ
え、>>197,198,306の御題は>>297を満たしているけど、何か?
> (1)Pythonのlambdaじゃ書けなくて
==> わざわざ複数の引数を渡しているから、Pythonのlambdaじゃ書けない
(タプルを使えば書けないことも無いかもしれないけど冗長になる)
> (2)関数を定義したら冗長になってしまうほど短い
==> 1カキコ内に収まるほどのコードなので、十分に短い
しかも再利用されないコード断片なのだから、関数定義が冗長なのは明らか
(Pythonの無名関数(=ラムダ式)って、一体何のために存在してるの?)
また、お題について不満があるなら、それを最初に(>>198の直後に)主張しないとね
散々ゴネたあげく後出しでブーブー文句を言うのはカコワルイよ
0333デフォルトの名無しさん
2012/08/16(木) 22:08:32.79nonlocal(酷い名前だ)を追加したPython3ではネストスコープの問題は無いの?
0334デフォルトの名無しさん
2012/08/16(木) 22:09:07.300335デフォルトの名無しさん
2012/08/16(木) 22:10:44.41>> (2)関数を定義したら冗長になってしまうほど短い
>>211のコードは>>197のHaskellや>>306のSMLより簡潔だけど?
ああ関数型言語は冗長なのか
0336デフォルトの名無しさん
2012/08/16(木) 22:11:12.57間違いは素直に認めろよ
0337デフォルトの名無しさん
2012/08/16(木) 22:13:45.93目の前のPCを破壊して二度と書き込まないでほしい
0338デフォルトの名無しさん
2012/08/16(木) 22:15:45.76RubyとPerlは?
というかPerlが完全に空気化してるのは、負けたからか?
まだそこそこ使われてるイメージだけどなあ
0339153
2012/08/16(木) 22:16:29.83>関数型言語でなければならないという観点は間違ってる気がする
ああ、これについては同感だね
現状のどの関数型言語も文字列、パターン、ハッシュの操作に難があるから、
現行LLであるPerl/Python/Rubyを置き換えるには無理があると思う
ただし、関数型言語にも良い特性がある訳で、実際に(LLを含む)多くの言語に影響を与えている
だから自分は「LLにおける関数型プログラミング」に注目している
0340デフォルトの名無しさん
2012/08/16(木) 22:18:23.40意味わかんねー。問題があったからnonlocalが追加されたんだろ。
しかもnonlocalが有るんなら、代入のある無しでスコープが変わる糞仕様は要らないだろ。
互換性のために残っちゃってるけど。
代入が無ければネストスコープ。
代入が有ればローカルスコープ。
しかしnonlocalが有れば代入があってもネストスコープ。
はぁ、糞ややこしいな。
代入の有る無しと、nonlocalの有る無しの、
二箇所を確認しないといけないなんて。
直感的でも無いしな。
しかし、代入の有る無しでスコープ切り替わるってのは意味分からないよな。
代入は「代入」だろ。代入に別の意味持たせるなよ。
0341デフォルトの名無しさん
2012/08/16(木) 22:18:38.00LLにおける関数型プログラミング
http://toro.2ch.net/test/read.cgi/tech/1345123070/
お前一人が明らかに邪魔なので、こちらでどうぞ
0342デフォルトの名無しさん
2012/08/16(木) 22:21:13.16いや互換性はもはやないよ。あと、代入するならnonlocalだよ
0343デフォルトの名無しさん
2012/08/16(木) 22:24:19.36再利用しないものに名前を付けるのが冗長だというなら
>>197にあるh,b,fという一次変数も冗長で不要
0344デフォルトの名無しさん
2012/08/16(木) 22:24:22.12ああ、問題残ってるよ。代入の有る無しでスコープが切り替わる問題が。
互換性のためか残っちゃってるけど、
nonlocal追加したんなら、思い切ってこの糞仕様は廃止すべきだったな。
nonlocal有りならネストスコープ、無しならローカルスコープ。
一貫してそれでよかったんだよ。シンプル、単純、分かりやすい。
スコープ調べるのに代入の有る無し調べるとか意味わかんねー。
折角nonlocal追加したのに、なぜに。
二箇所調べなきゃならなくなったから、状況はより悪化したともいえる。
0345デフォルトの名無しさん
2012/08/16(木) 22:25:04.92shadowingの概念知らんの?
0346デフォルトの名無しさん
2012/08/16(木) 22:26:16.84ちょっと待てよ。nonlocal追加以前はそもそも代入不可だろ
0347デフォルトの名無しさん
2012/08/16(木) 22:27:08.830348uy
2012/08/16(木) 22:27:35.56jsは用途が違う
PHPはいわずもがな
pythonは日本じゃ流行らない
rubyですね
0349デフォルトの名無しさん
2012/08/16(木) 22:30:33.87いや、代入できるよ。ローカルスコープの変数になるけどな。
代入があっても、nonlocalならネストスコープ。
nonlocal無くても、代入が無ければネストスコープ。
あー超ややこしいね。
単に、nonlocal有り/無しで、ネスト/ローカルが切り替わる
方が直感的で良いよなぁ。
0350デフォルトの名無しさん
2012/08/16(木) 22:31:24.90いや、nonlocalを何のために使うのか理解してないでしょw
0351デフォルトの名無しさん
2012/08/16(木) 22:34:27.06その側の変数には代入できない。それを可能にするのがnonlocal
0352153
2012/08/16(木) 22:34:31.89え、単純なステップ数で比較しているの!
こちらとしては「再利用されない(一度しか使われない)コード断片を
わざわざ関数として定義するのは無駄(=冗長)」と言ってるだけだけど、これは非常識なのかな?
というかPythonの無名関数(=ラムダ式)は、いったいぜんたい何の為に存在してるんだろう?
ああPythonのラムダはやっぱり「まがい物」なのか
0353デフォルトの名無しさん
2012/08/16(木) 22:35:25.54globalに似てて、globalとも違うから、いいネーミングだと思うけどなあ
0354デフォルトの名無しさん
2012/08/16(木) 22:37:12.96その変数がネストスコープであることを示すためだ。
しかし、nonlocalが無くても、参照のみならネストスコープだ。
ここがまずおかしいね。普通、ローカル変数となるべきところだ。
そして、(代入無しで参照しているから)プログラムはエラーで落ちなければならない。
普通そういう動作が求められるところ。
0355デフォルトの名無しさん
2012/08/16(木) 22:40:05.990356デフォルトの名無しさん
2012/08/16(木) 22:42:12.88なぜnonlocal無しで代入は出来ないのに参照は出来るんだ?
そこがまずおかしいと思わないと。しかも完全なリードオンリーならまだ使い道もあるが、
実際にはメンバ変数を変更したりは自由なんだからCのconstの代わりとしても役に立たない。
別に狙ったものでもなんでもなくて、代入で宣言を代用したことによる単なる文法上の不備でしかないからな。
しかし代入の有る無しでスコープの変わるカス仕様を擁護できるとはおめでたい。
そういう頭じゃないとPythonに惚れ込むのは無理なのか。
0357uy
2012/08/16(木) 22:44:18.14スコープは基地外なほうが便利なこともあるんじゃない
0358デフォルトの名無しさん
2012/08/16(木) 22:44:18.55なにを混乱するんだろう
0359デフォルトの名無しさん
2012/08/16(木) 22:45:56.65局所変数を定義したら外側のスコープの
同名の変数は直接見えなくなる
Cで書けばこういうことね
int x = 0, y = 0;
{
int x = 1;
printf("%d,%d\n", x, y);
}
printf("%d,%d\n", x, y);
こんな簡単なことも分からない馬鹿って生きてる意味あるの?
0360デフォルトの名無しさん
2012/08/16(木) 22:47:51.21Pythonのラムダ式は要らんね
ただ再利用されなくても関数として定義するのは言語問わず無駄ではないよ…マシンには無駄かも知れないが
コードを読む際には処理の区切りや、その処理の区切りにとって必要なデータは何なのか、などが明確になる
0361uy
2012/08/16(木) 22:48:23.51それはCのゴミカスコープ
0362デフォルトの名無しさん
2012/08/16(木) 22:51:18.10だからそれがカス仕様だって言ってるんだ。
>局所変数を定義したら外側のスコープの同名の変数は直接見えなくなる
それはごもっとも。しかしだ、問題はそこじゃない。
変数の宣言に代入を代用しているから、代入しようとすると宣言する羽目になって、
お前の言う、「局所変数を定義したら外側のスコープの同名の変数は直接見えなくなる」
に陥ってるんだ。だから変数の宣言と代入が別の構文なら、こういう問題は発生しない。
宣言せずに、代入だけすれば、その側のスコープの変数に代入できるからな。
そこがまずミスってるわけ。そんで今になってnonlocal追加。余計にカオス。
他の言語で見られるようなvar方式の方がましだったってわけ。
0363153
2012/08/16(木) 22:52:20.86お、わざわざスレを立ててくれたんだね、ありがとう
早速、Python関連サイトへのリンク集をカキコしておいたよ
では、このスレでは議題が「Pythonにおけるnonlocalの是非」へと移ったからみたいだから、
(このスレでは)しばらくROMにまわることにする
0364デフォルトの名無しさん
2012/08/16(木) 22:53:35.57なんか本当に混乱して全く理解できない状態で説明してるんだよね
0365デフォルトの名無しさん
2012/08/16(木) 22:54:19.53お前の引き出しの少なさに唖然とするわ
というかお前Pythonのこと何も知らんくせにPythonのリンク貼るなカス
0366デフォルトの名無しさん
2012/08/16(木) 22:55:12.21nonlocal: 外側のスコープの変数へ代入するときに付ける
局所変数の宣言の方が沢山書くんだからvarの方が冗長
ていうかnonlocalが無ければ外側の変数に代入できないんだから
混乱するのはアホだけだ
0367デフォルトの名無しさん
2012/08/16(木) 22:55:34.09良かったね^^
これで思う存分お前のやりたい議論が出来るね^^
0368デフォルトの名無しさん
2012/08/16(木) 22:58:26.10代入と宣言はまったく別のものだろ。
代入は代入だし、宣言は動的型言語の場合スコープを決めるためのものだ。
一緒くたにしてしまって、使い分けできなくなってしまって不便になったものだから、
あとからnonlocal追加。塩と砂糖を混ぜておいて、後から塩だけ分離するようなものだ。
はじめから混ぜるな。あたりまえ。
0369デフォルトの名無しさん
2012/08/16(木) 23:00:16.560370デフォルトの名無しさん
2012/08/16(木) 23:00:51.21自分で書く場合は混乱しない。問題はは他人のソースを読む時。
ある変数のスコープを調べたい時、nonlocalと代入の有る無しの両方を確認しないと
スコープが確定しない。
0371デフォルトの名無しさん
2012/08/16(木) 23:03:05.530372uy
2012/08/16(木) 23:03:18.38だったら最初から混ぜるな!
0373デフォルトの名無しさん
2012/08/16(木) 23:03:35.02> 自分で書く場合は混乱しない。問題はは他人のソースを読む時。
いや、お前明らかに混乱してたろww 面白い奴だな
0374デフォルトの名無しさん
2012/08/16(木) 23:06:00.64解決していない。代入の有る無しでスコープが変わる糞仕様は残ったまま。
代入で宣言を代用する、アホな発想は残ったまま。
便利な万能調味料を作ろうとして、塩と砂糖を混ぜたのが今までのPython。
使い分けできなくなって困ったから、そこから塩だけ分離する機能をつけたのが新しいPython。
しかしだ、小学生でも言うぜ?
はじめから混ぜなければ、あとで分離する必要は無いのにって。
0375デフォルトの名無しさん
2012/08/16(木) 23:07:31.610376デフォルトの名無しさん
2012/08/16(木) 23:09:13.91代入で宣言するから、宣言でスコープが決まるだけでしょ
0377デフォルトの名無しさん
2012/08/16(木) 23:10:17.73だからお前がアホなのは分かったって
0378デフォルトの名無しさん
2012/08/16(木) 23:11:41.040379デフォルトの名無しさん
2012/08/16(木) 23:13:36.05なぜか知らないが、君がそう勘違いしているだけ。
たとえ宣言をしなくて良かったとしても、
どの道、初期化してからしか変数を使用できない。
さすがに初期化するの面倒じゃん、とは言えないでしょ。
初期化は必ず必要。だから、初期化するついでに宣言すればよい。
手間は変わらないということ。varが嫌なら、i @= 0とかでも良い。
何でも良い。普通の代入と宣言付き代入の区別さえ付けばよい。
0380デフォルトの名無しさん
2012/08/16(木) 23:15:09.84i @= 0とかいくらなんでもキモすぎだろ。そういう言語があるの?
0381デフォルトの名無しさん
2012/08/16(木) 23:16:46.28なんで代入で宣言するんだよ。宣言無しの普通の代入は?
代入と宣言は別のものだろ。代入は代入。宣言はスコープを決めるもの。
ぜんぜん動作が違う。なぜ両者を混ぜる?そしてなぜ後で分離する(nonlocal)?
ナンセンスだろ。馬鹿げてるって分からない?
0382デフォルトの名無しさん
2012/08/16(木) 23:16:53.87Perlに倣ってシメジ代入演算子と命名しました
0383デフォルトの名無しさん
2012/08/16(木) 23:17:30.340384デフォルトの名無しさん
2012/08/16(木) 23:18:27.99それ以外の場合はろくなことにならない悪寒
0385デフォルトの名無しさん
2012/08/16(木) 23:18:54.59便利だからだろ。それで必要な所だけで宣言するようにしたんだから
お前の案よりエレガントじゃね
0386デフォルトの名無しさん
2012/08/16(木) 23:19:35.83宣言が i := 0 って言語なら有る。
@=はキモいけど、今回あえてそう書いたのは、
プロポーショナルフォントだと「:」が潰れて:=と=の区別がつきにくく、
掲示板に投稿するのには向いて無いから。
でも実際なんでも良い。普通の代入と宣言付き代入の区別さえ付けば。
0387デフォルトの名無しさん
2012/08/16(木) 23:23:04.620388デフォルトの名無しさん
2012/08/16(木) 23:26:50.76自分の好みを連呼するだけの馬鹿だと分かってガッカリ
0389デフォルトの名無しさん
2012/08/16(木) 23:29:09.850390デフォルトの名無しさん
2012/08/16(木) 23:29:37.780391デフォルトの名無しさん
2012/08/16(木) 23:30:33.43ラムダは貧弱だし、スコープはおかしいし、
単純にラムダ多用が当たり前の今の風潮に向いて無い言語なんだよね。
ラムダはスコープが重要になってくるし、しかもそのラムダ自体が貧弱なのだから。
0392デフォルトの名無しさん
2012/08/16(木) 23:31:54.330393デフォルトの名無しさん
2012/08/16(木) 23:35:12.230394デフォルトの名無しさん
2012/08/16(木) 23:37:44.86今日一日で関数型言語を嫌う人間は確実に増えた
0395デフォルトの名無しさん
2012/08/16(木) 23:44:43.340396デフォルトの名無しさん
2012/08/16(木) 23:51:58.10こんどは代入の有る無しでスコープが切り替わる変な仕様が牙をむいてくる。
ことラムダに関してはPythonは2重に詰んでいる。
逆にその辺を何故かうまくかいくぐったJSの先見の明には驚かされる。
シンプルで素直な言語仕様が生きたな。
Cにも通ずるものがある。
0397デフォルトの名無しさん
2012/08/17(金) 00:07:03.34クロージャでよくある例として、関数が呼び出された回数を数えるカウンタ
ここではデコレータで、カウントしたい関数をデコレートして実現してみた
Python2.x:参照が読めるだけだからリストを使う
http://ideone.com/aa0et
Python3.x:nonlocalで宣言した外側の変数に代入できる
http://ideone.com/8C3tB
0398デフォルトの名無しさん
2012/08/17(金) 00:13:45.80def f():
nonlocal c
c += 1
print(c)
f()
つかこれは動かないけどw
メソッドの内部にはない変数はまた別ってこと?
0399デフォルトの名無しさん
2012/08/17(金) 00:15:21.580400デフォルトの名無しさん
2012/08/17(金) 00:19:40.50チュートリアルにデコレータないんだけどなんなの
0401uy
2012/08/17(金) 00:21:22.59ちょっと試したけどPythonきも
これはrubyで余裕で勝てる
0402デフォルトの名無しさん
2012/08/17(金) 00:26:22.46チュートリアルに載ってないことなんてナンボでもあるべ
0403デフォルトの名無しさん
2012/08/17(金) 00:30:07.040404デフォルトの名無しさん
2012/08/17(金) 00:37:20.380405デフォルトの名無しさん
2012/08/17(金) 00:45:42.98減るわけないじゃん。 >>385を論破してみろよ
0406デフォルトの名無しさん
2012/08/17(金) 00:54:36.95面白いから答え書かずに眺めておこう。
0407デフォルトの名無しさん
2012/08/17(金) 00:59:43.480408デフォルトの名無しさん
2012/08/17(金) 01:11:43.19代入で宣言を代用する方式は、ネストスコープを持つ最近の言語には殆ど採用されて無い、
というか、俺は見たことが無い。優れた方式ならもっと採用されているはずだろ。
0409デフォルトの名無しさん
2012/08/17(金) 01:18:03.74バカですが何か
0410デフォルトの名無しさん
2012/08/17(金) 01:35:29.44そのレスだけでは詭弁でしかない
0411デフォルトの名無しさん
2012/08/17(金) 01:39:45.14Python自体はあちこちにそこそこ採用されてるからやっぱり優れた言語なんだな
0412デフォルトの名無しさん
2012/08/17(金) 01:59:31.43どこが詭弁なんだよ。
Pythonが出来た時代にはこんなにラムダが多用されるようになるとは
夢にも思わなかったんだろうよ。
だから、インナー関数は殆ど使われないし、ネストスコープもそんなに現れない、
そういう前提で、代入で宣言を代用したんだろう。
ところが、世の中ラムダだらけ、スコープだらけになってしまった。
時代を読むのは難しいが、ネスケ社が片手間に作ったJSがその辺上手に切り抜けているから
言い訳は出来ないわ。やはり言語仕様はシンプルで素直なのが一番。
当時の常識で変に捻ると後々邪魔になる。
0413デフォルトの名無しさん
2012/08/17(金) 02:05:54.04まず、Pythonでも普通にラムダは使うし、他の言語より使わないとしたらそれはリスト内包表記が便利だからだよ
0414デフォルトの名無しさん
2012/08/17(金) 02:08:22.62自分が好き=シンプルなのか?
0415デフォルトの名無しさん
2012/08/17(金) 02:10:14.31Pythonのラムダって、あの式しか書けないやつですか?
0416デフォルトの名無しさん
2012/08/17(金) 02:10:46.27どっちかっつーと機能制限のせいだと思う、というか自分はそれがあるから内部関数のほうが多い
今は三項if式があるから昔よりマシになったけど、文が書けないってのは何気にキツいと思う
0417uY ◆gXFLM6waxs
2012/08/17(金) 02:12:07.39ちょっと落ち着けば?
http://img.pics.livedoor.com/011/c/6/c6a670a71f0ef9867635.gif
http://img.pics.livedoor.com/012/8/8/880651e544c143b0cbce.jpg
0418デフォルトの名無しさん
2012/08/17(金) 02:13:45.30Ruby や Python、Haskell から影響を受けたシンタックスシュガーの導入により、JavaScript に比べ簡潔さと可読性を向上させた
ワロタ
0419デフォルトの名無しさん
2012/08/17(金) 02:16:05.290420デフォルトの名無しさん
2012/08/17(金) 02:19:28.36JSがシンプルというのも甚だ疑問だけど、他の最近の言語だって全然シンプルじゃないだろ
0421デフォルトの名無しさん
2012/08/17(金) 02:20:53.14関数型では多用するけど、手続き型では代替手段を使うことのほうが多いよね
PerlやRubyはブロックだし、Pythonはforイテレータやリスト内包、ジェネレータ式や内部関数
強いて言えば無名関数リテラルでやるJSくらいじゃないか?当て嵌まるのって
0422デフォルトの名無しさん
2012/08/17(金) 02:25:00.28巨大なラムダをねじ込む方が明らかに醜いと思うけど
0423デフォルトの名無しさん
2012/08/17(金) 02:27:11.15え、このスレでは、Rubyのブロックをラムダって言ったら怒られるわけ?
0424デフォルトの名無しさん
2012/08/17(金) 02:29:13.98関数定義してはいけないという宗教の人は酷いコードを書いてそうだな
0425uY ◆gXFLM6waxs
2012/08/17(金) 02:33:33.57ある程度まで大きな処理になるならラムダじゃなくてクラスにするべきなんだよ
そこら辺のさじ加減を間違えるとゴミ
0426デフォルトの名無しさん
2012/08/17(金) 02:35:21.78嫌だよ。俺の感覚だと、ラムダはfor文やif文に続くブロックと同じ扱いだから。
あそこを名前つけて関数化したいやつはおるまい。
0427デフォルトの名無しさん
2012/08/17(金) 02:40:31.770428デフォルトの名無しさん
2012/08/17(金) 02:45:41.20Rubyのブロックはそれ自体ではまだ値ではないからな
オマケにラムダは別で存在するし
0429uY ◆gXFLM6waxs
2012/08/17(金) 02:57:30.07lambdaを渡す事も出来るってだけで別物
0430デフォルトの名無しさん
2012/08/17(金) 03:02:03.44いや{|v| }の段階ではまだprocですらないだろ
ただのメソッド呼び出しの一部でしかない
0431デフォルトの名無しさん
2012/08/17(金) 08:56:29.28スレタイ見えない馬鹿がいる
0432デフォルトの名無しさん
2012/08/17(金) 09:09:32.700433デフォルトの名無しさん
2012/08/17(金) 09:33:25.470434uY ◆gXFLM6waxs
2012/08/17(金) 10:08:49.410435デフォルトの名無しさん
2012/08/17(金) 10:51:41.54どこぞのクソコテのせい。
0436uY ◆gXFLM6waxs
2012/08/17(金) 11:22:36.94rubyをはじめ動的言語は型情報がない分、ソースを書くのが楽だから
静的言語だと作業時間や労力的に見て
絶対にかけないようなシステムが構築できると思う
人間は例外なくプログラミング言語を完璧には使いこなせないので
「理論的に出来る」じゃ、出来ないんだ
動的言語がオモチャだなんてとんでもない
型エラーで悩まされることのない動的言語はやばいぞ
0437デフォルトの名無しさん
2012/08/17(金) 22:35:04.98コーディングの量が多くても潜在バグを探知できるから静的型付けは生産性が高いんだ。
JavaScriptでバグがでようがでまいがどうでもいい箇所しか使い道なんて無いんだよ動的型付けは。
RubyやPythonでサーバーサイドなんえ実用性とか全くない。
0438デフォルトの名無しさん
2012/08/17(金) 22:39:12.61うまく扱えないだろ?
あの手の環境って時代遅れかもよ?
0439uY ◆gXFLM6waxs
2012/08/17(金) 23:12:05.26動的言語で大規模開発できる奴らはスキル低くないんだってば
0440uY ◆gXFLM6waxs
2012/08/17(金) 23:25:37.50なんか静的言語ならバグが混入しないみたいな事言ってる奴いるけど
凄い勘違いだと思う
実際はただ混入しやすいバグの種類が違うだけ
0441デフォルトの名無しさん
2012/08/18(土) 00:41:53.89http://engawa.2ch.net/test/read.cgi/poverty/1345217353/
釜山(プサン)地方裁判所は16日、債務超過に陥った釜山貯蓄銀行に対し、破産を宣告しました。
釜山貯蓄銀行は去年2月17日に営業停止処分を受けたのに続き、去年4月29日には、BIS=国際決済銀行による
自己資本比率がマイナス50.29%と、健全性を示す基準の1%を大幅に下回っていたため、
不健全金融機関に指定されました。
当時、釜山貯蓄銀行の資産総額は1兆3000億ウォン、借金は3兆5000億ウォンで、
資本金の増額や第三者による買収など経営改善の可能性も低いことから、
管財人が清算に向けて破産を申請していました。
5000万ウォン以下の預金資産や優良資産などはすでにブリッジバンクのイェソル貯蓄銀行に引き継がれており、
破産宣告により、釜山貯蓄銀行に5000万ウォンを超える預金を預けている
預金者と後順位の債権者は、破産手続きによる配当を受けることになりますが、
残った資産を処分しても、配当として受け取る資金はほとんどないものとみられます。
ただ、5000万ウォン未満の預金者は、今後もイェソル貯蓄銀行の管理のもとで、金融取り引きを続けることができます。
これに先立ち、今月14日には第一(チェイル)、第一2、プライム相互貯蓄銀行が
ソウル中央地方裁判所に破産申請を行っており、
トマト貯蓄銀行とパランセ貯蓄銀行もすでに先月、裁判所に破産を申請しています。
http://world.kbs.co.kr/japanese/news/news_Dm_detail.htm?No=44906
0442デフォルトの名無しさん
2012/08/18(土) 00:46:48.570443デフォルトの名無しさん
2012/08/18(土) 01:02:28.22LLがどうとかおいておくとC#とか?あとPowerShellもか
0444デフォルトの名無しさん
2012/08/18(土) 01:37:03.91お前それマジなの?
0445デフォルトの名無しさん
2012/08/18(土) 01:43:56.230446デフォルトの名無しさん
2012/08/18(土) 02:02:51.802ch総力を上げてもいいのよ?
0447デフォルトの名無しさん
2012/08/18(土) 02:24:21.07輸出に次いで内需の鈍化も懸念されている。住宅価格の下落とそれに伴う消費や投資の抑制がみられ、バブル崩壊以降日本が苦しんだ
「日本型長期デフレ」の兆候が現れている、との指摘も少なくない。
■好調に見えたのはヒュンダイやサムスンだけ
韓国の輸出は、2012年7月の通関ベースで前年同月に比べて8.8%減と大きく減った。マイナス幅は3年ぶりの高い数値だという。
これまで韓国の輸出をけん引してきた自動車の輸出が頭打ちになったのをはじめ、船舶や石油化学製品、携帯電話など主力製品の輸出が急速に落ち込んだ。
韓国の輸出額は国内総生産(GDP)対比で50%を超える。「輸出国」といわれる日本でもGDP対比では10%半ばだから、輸出依存度の高さは圧倒的だ。
そのため、輸出の不振は即韓国経済の失速に直結する。
なかでも韓国経済を支えてきたのが欧州連合(EU)向けの輸出。EUとは自由貿易協定(FTA)を結んでいる。そのEU向けが12年1〜6月期には前年同期に
比べて16.0%も減った。EU諸国の債務危機から発した景気低迷が影響した。
さらには中国向けも1.2%減った。第一生命経済研究所経済調査部の主任エコノミスト、西?徹氏は、「中国向け輸出の減少はボディブローのように効いています」と話す
。韓国の素材や部品メーカーは中国を介して、間接的にEU向け輸出を増やしてきたからだ。
http://headlines.yahoo.co.jp/hl?a=20120817-00000006-jct-bus_all
0448デフォルトの名無しさん
2012/08/18(土) 04:18:00.220449デフォルトの名無しさん
2012/08/18(土) 04:30:22.45ツイッター潰せばいいだけでしょ
0450デフォルトの名無しさん
2012/08/18(土) 09:45:36.90テキトー抜かすな
0451デフォルトの名無しさん
2012/08/18(土) 11:28:02.65動的型付け言語に人生をかけてるuvさんもきっとどこかに捨てられたんでしょうね。
0452デフォルトの名無しさん
2012/08/18(土) 11:35:57.91型宣言がソースが長くなるだけの無用なものとか言ってるやつらは開発なんてしたことがないエセプログラマー。
オブジェクト指向言語でわざわざpublicとかの修飾子つけるのが無駄だとしか思ってないんだろうな
0453デフォルトの名無しさん
2012/08/18(土) 12:02:57.81可読性ゼロの変態文法だし、アプデするごとに互換性なくなるんだもんw
0454デフォルトの名無しさん
2012/08/18(土) 12:06:16.28Goには頑張って欲しい
0455デフォルトの名無しさん
2012/08/18(土) 12:22:28.860456デフォルトの名無しさん
2012/08/18(土) 12:28:14.05型チェックがないと簡単にバグってしまうような技術レベルなら
それこそエセですよ
0457デフォルトの名無しさん
2012/08/18(土) 12:45:51.680458デフォルトの名無しさん
2012/08/18(土) 13:15:12.79言語仕様が変だというのが捨てる理由なら、真っ先にPHPのシェアが0に
なってなければ変なんだけどwwwwwwww
0459デフォルトの名無しさん
2012/08/18(土) 14:03:14.72捨ててないよ
Rubyのエンジニアが多いからこれからも使っていくみたいだよ
0460uy
2012/08/18(土) 14:14:03.81言語の互換性ってそれほど大きな問題でもない気がする
仕様変わっても1日あればバグ全部とれるわ
それにrubyは順調にひろまってるwww
評判がわるいガラパゴスは2chだけwwww
0461デフォルトの名無しさん
2012/08/18(土) 15:05:28.42流行ってる、流行ってるっていうけどRuby使ってるヤツなんか見たこと無い
0462デフォルトの名無しさん
2012/08/18(土) 15:07:25.280463デフォルトの名無しさん
2012/08/18(土) 15:11:58.61JavaScript 20%
Ruby 14%
Python 9%
Shell 8%
Java 8%
PHP 7%
C 6%
C++ 4%
Perl 4%
Objective-C 3%
JavaScript相変わらずつよす
0464デフォルトの名無しさん
2012/08/18(土) 15:26:32.95それってプロジェクト数で出してるのかなぁ。そしたら使い捨てほど上に来やすいと納得。
0465デフォルトの名無しさん
2012/08/18(土) 15:27:47.86Rubyが高いとか捏造ランキング乙w
>>462
え?なに?ウンコでも食ってんのRuby使いは?
0466uy
2012/08/18(土) 15:38:52.03http://d.hatena.ne.jp/keyword/GitHub
Rails や RSpec 等、また http://gems.github.com/ の
Rubygems のレポジトリソース等、Ruby 関係のライブラリの
コードを中心とした様々なオープンソースの開発の場所ともなっている。
それに 「参考資料に https://github.com/languages 」というのは実は
http://www.infoq.com/jp/news/2011/04/github-2m
> 言語に関する統計ページがあるが、これは
> プロジェクト数ではなくコード行数をカウントしている。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
0467デフォルトの名無しさん
2012/08/18(土) 15:48:55.18コード行数でカウントしててruby2位って相当じゃねーの
0468デフォルトの名無しさん
2012/08/18(土) 15:53:27.800469uY
2012/08/18(土) 15:53:45.61http://d.hatena.ne.jp/keyword/GitHub
>git のプロジェクトホスティングサービス。Rails で作成されており、使いやすいインターフェイスが特徴。
~~~~~~~
R a i l s
~~~~~~~~~~~
0470デフォルトの名無しさん
2012/08/18(土) 15:57:38.08調べればいいんじゃね?
ところで、どこにあるん?
0471デフォルトの名無しさん
2012/08/18(土) 16:02:57.25>>467
行数でカウントしたいならこっちか
http://www.ohloh.net/languages?query=&sort=code
0472デフォルトの名無しさん
2012/08/18(土) 16:19:16.14/| |
||. |∧_∧|
||. (´・ω・| うわっ、クソスレに来てしまった。
||oと. U|
|| |(__)J|
||/ ̄ ̄
___
| |
| |
| o|
| |
| |
彡 ̄ ̄ パタン、
0473uy
2012/08/18(土) 16:29:17.41ステップ数でカウントと言おう
Rubyはステップ数が多い。
0474デフォルトの名無しさん
2012/08/18(土) 17:08:37.680475デフォルトの名無しさん
2012/08/18(土) 17:22:25.770476デフォルトの名無しさん
2012/08/18(土) 17:35:21.010477デフォルトの名無しさん
2012/08/18(土) 17:36:33.020478デフォルトの名無しさん
2012/08/18(土) 17:57:03.32オレのは余計サブくなったけど・・・
0479デフォルトの名無しさん
2012/08/18(土) 18:11:35.41if(i)
puts "true"
else
puts "false"
end;
なんでtrueになるの?
0480uY ◆gXFLM6waxs
2012/08/18(土) 18:43:59.730481デフォルトの名無しさん
2012/08/18(土) 20:03:14.870482uY
2012/08/18(土) 22:10:47.150483デフォルトの名無しさん
2012/08/18(土) 23:23:57.45なかなかうまく機能する
0484デフォルトの名無しさん
2012/08/19(日) 01:06:57.210485デフォルトの名無しさん
2012/08/19(日) 01:28:14.600486uy
2012/08/19(日) 01:36:50.630487デフォルトの名無しさん
2012/08/19(日) 03:42:32.990488デフォルトの名無しさん
2012/08/19(日) 04:18:39.97文字のインスタンスがあるから
0489デフォルトの名無しさん
2012/08/19(日) 04:21:03.00まわりでruby使ってるやつみたことない
0490デフォルトの名無しさん
2012/08/19(日) 04:39:40.97もし空文字列(長さがゼロの文字列)かどうか調べるならString#empty?があるよ
0491デフォルトの名無しさん
2012/08/19(日) 05:37:53.950493デフォルトの名無しさん
2012/08/19(日) 07:03:19.280494デフォルトの名無しさん
2012/08/19(日) 12:32:05.500495デフォルトの名無しさん
2012/08/19(日) 14:52:41.00みんな煽ってるだけ
ステマ
0496uY
2012/08/19(日) 15:58:54.74スクレイピングやったことある?
ツイッターBOT作ったことある?
makefile不便だと思った事ない?
2chねるに書き込みとかしたくなったことない?
それらはすべてrubyで簡単に解決できます
0497デフォルトの名無しさん
2012/08/19(日) 16:07:26.66てかその用途自体、Rubyが言語というよりツールの趣が強いって証だ
0498uY
2012/08/19(日) 16:09:45.700499デフォルトの名無しさん
2012/08/19(日) 16:13:18.070500デフォルトの名無しさん
2012/08/19(日) 16:34:32.49できない言語探す方が難しいわw
0501デフォルトの名無しさん
2012/08/19(日) 16:44:04.100502デフォルトの名無しさん
2012/08/19(日) 18:24:03.91特定用途に強いことはわかった
レールから外れるとなにもできないのはわかった
0503デフォルトの名無しさん
2012/08/19(日) 18:37:22.200504デフォルトの名無しさん
2012/08/19(日) 18:47:09.29あ、rubyでよさそうですね
rubyやることにします
0505uY
2012/08/19(日) 18:48:13.63あ、おめでとうございます
それ正解です
rubyをやりましょう
0506uy
2012/08/19(日) 19:27:48.090507デフォルトの名無しさん
2012/08/19(日) 20:33:10.180508uy
2012/08/19(日) 20:48:32.33他演だよ。
他演ってのはな、自演に見えるように
他の人がわざと意図的に
都合のいいレスをすることだ。
0509デフォルトの名無しさん
2012/08/20(月) 02:15:02.710510デフォルトの名無しさん
2012/08/20(月) 02:21:37.400511デフォルトの名無しさん
2012/08/20(月) 02:50:59.030512uY
2012/08/20(月) 05:46:11.83何も考えずに適当に書くとこうなるコードでも
n = i = 0
s = []
b = ["a","b"]
[1,2,3].cycle do | m |
n += 1
i += 1
break if n == 21
s << m
if i == 4
i = 0
s << b.first
b.rotate!
end
end
p s
↓ちゃんと書けばちゃんとブロック内に全部収まるところが、rubyが最強である所以だと思う
[1,2,3].cycle.take(20).each_with_index.each_with_object [ s = [] , ["a","b"] ] do | ( m , i ) , ( s , b ) |
s << m
( (i += 1) % 4 ).zero? and s << b.rotate![-1]
end
p s
メソッド名が長かったりしてソースは長いけどアルゴリズムとしては完璧なものが書けるんだよ
0513uy
2012/08/20(月) 07:39:28.20徹夜明けはだめだ消えますさよなら
0514デフォルトの名無しさん
2012/08/20(月) 09:50:11.230515デフォルトの名無しさん
2012/08/20(月) 09:57:44.620516デフォルトの名無しさん
2012/08/20(月) 14:33:03.13仕様がどう与えらてんのかによるけど、何も考えずに書くなら普通こうだろ?
a = [1,2,3].cycle
b = ["a","b"].cycle
p (1..25).map{ |i| (i%5)!=0 ? a.next : b.next }
0517uy
2012/08/20(月) 14:50:30.460518デフォルトの名無しさん
2012/08/20(月) 16:05:06.61uyが無駄に長いコードを書いて悦に入っているってことはわかった
0519uY
2012/08/20(月) 16:31:55.85Hash[ true , b.next , false , a.next ][ ( i % 5 ).zero? ]
end.display
puts
[1,2,3].cycle.take(40).each.with_index(1).each_with_object( ["a","b"].cycle ).map do | ( m , i ) , b |
( i % 5 ).zero? ? b.next : m
end.display
変数の完全隠蔽がされている
アルゴリズムとして完璧なんだよこれは
これを無駄に長いとはいわない
短くしようと思えば出来る長さなんだよ
すべてがメソッドで、その引数で構成されているから
↓これが出来る
a = [1,2,3].cycle.take(40).each.with_index(1).each_with_object( ["a","b"].cycle )
a.map do | ( m , i ) , b |
( i % 5 ).zero? ? b.next : m
end.display
0520デフォルトの名無しさん
2012/08/20(月) 17:05:56.67print([s if i % 5 == 0 else n for n,s,i
in zip(cycle([1,2,3]), cycle("ab"), range(1,41))])
0521デフォルトの名無しさん
2012/08/20(月) 17:06:07.16あのぉ、516の細かいところををしれっとパクってるうえに
仕様がかわっちゃっている(バグってる)んですけど?
相変わらず読みにくいし汚いし。
完璧なアルゴリズムが聞いてあきれるわ。
0522uY
2012/08/20(月) 17:36:57.99俺様の使うコードでは配列じゃない都合が悪いから配列で書いている
このスレ的にはcycle.nextの方が良いと思ったから書き直しただけ
これが読めないなら慣れろとしかいえない
バグってるって何が?意味が分からない頭大丈夫?take20がtake40になっただけだよ?生きてる?
>>520
> from itertools import cycle
えっ
Pythonってこんな宣言書かないとcycle使えないの?
0523uY
2012/08/20(月) 17:38:29.70はぁ???
0524デフォルトの名無しさん
2012/08/20(月) 17:41:46.410525デフォルトの名無しさん
2012/08/20(月) 17:42:36.09> バグってるって何が?意味が分からない頭大丈夫?take20がtake40になっただけだよ?生きてる?
>>512の出力
[1, 2, 3, 1, "a", 2, 3, 1, 2, "b", 3, 1, 2, 3, "a", 1, 2, 3, 1, "b", 2, 3, 1, 2, "a"]
>>519の出力
[1, 2, 3, 1, "a", 3, 1, 2, 3, "b", 2, 3, 1, 2, "a", 1, 2, 3, 1, "b", 3, 1, 2, 3, "a", 2, 3, 1, 2, "b", 1, 2, 3, 1, "a", 3, 1, 2, 3, "b"]
0526uY
2012/08/20(月) 17:48:06.99ばーか、細かいこと気にしてるから
お前はハゲなんだ。ハーゲw
0527uY ◆gXFLM6waxs
2012/08/20(月) 17:48:45.110528デフォルトの名無しさん
2012/08/20(月) 17:54:20.010529デフォルトの名無しさん
2012/08/20(月) 18:04:01.800530デフォルトの名無しさん
2012/08/20(月) 18:07:39.270531uY ◆gXFLM6waxs
2012/08/20(月) 18:09:43.34Pythonは>>520
2つくらいの規則がはいってる
>>529
別にどっちでも正解、どういう仕様にするかってだけ
これは俺様Libの中の数列生成ライブラリ
俺様Libでこの数列は
func(5,["a","b"],[1,2,3])
によってEnumratorを返すから
p func(5,["a","b"],[1,2,3]).take(20)
で表現できる
いま思ったけど>>512と>>519は両方の仕様を入れてもいいかもしれないね、そうだね、そうしよう
0532デフォルトの名無しさん
2012/08/20(月) 18:12:00.710533デフォルトの名無しさん
2012/08/20(月) 18:33:14.290534デフォルトの名無しさん
2012/08/20(月) 19:46:46.990535デフォルトの名無しさん
2012/08/20(月) 19:48:26.660536デフォルトの名無しさん
2012/08/20(月) 19:51:45.79日本で生まれた言語だよ?
なるべく多くの用途にrubyを使っていく事で今後世界のITにおいて日本が優位に立てる要因のひとつになる
明日の飯の種しか見れない人たちなんですか?
0537デフォルトの名無しさん
2012/08/20(月) 19:56:06.47いい言語だからruby使うというだけのこと
0538デフォルトの名無しさん
2012/08/20(月) 20:00:25.63すべての用途にrubyをなんて流れが日本で主流になったら、
間違いなく日本のIT業界は滅びるな
0539デフォルトの名無しさん
2012/08/20(月) 20:06:23.73ほかはどうにもならないくらいに差をつけられた
お前らが何を考えているか分からない
0540デフォルトの名無しさん
2012/08/20(月) 20:13:26.70rubyなんかよりGauche使うべき。
0541デフォルトの名無しさん
2012/08/20(月) 20:21:22.340542デフォルトの名無しさん
2012/08/20(月) 21:06:32.62ぼったくられてるだけだろ
0543デフォルトの名無しさん
2012/08/20(月) 21:18:36.87次に遅すぎる。下手打つと簡単に帰ってこなくなる。そのたびにC書いたりチューンしないといけない。
そして一度書いたコードが処理系ver upですぐ動かなくなる。ころころ変わり過ぎ。
どんなに開発効率が上がったとしても、こんなネガティブだらけじゃ怖くて使えない。
0544デフォルトの名無しさん
2012/08/20(月) 21:52:28.920545デフォルトの名無しさん
2012/08/21(火) 00:17:33.08というか二人以上で使う言語じゃない気がする
まあ、一人で使うとしてもPythonの方が、自分のコードを見返した時に分かりやすいと思うけど
0546uY
2012/08/21(火) 01:05:59.17この言語はダメだ
やっぱ不安定
いやでも大勢が使えばバグどんどん見つかって便利になっていくんだろ
やっぱみんなで使えばいいじゃん クズゴミなのは分かってる でもつかっていけばいいじゃん
今日俺は2時間も犠牲にしてバグの特定
2時間だよ2時間、それだけの時間あれば俺はきっと萌え絵を一枚描きあげてる
なんで世界で数十万単位の人間が使ってるはずなのに俺程度で見つけられるバグが
こんないくつも残ってんの?おかしい
もうやんない
再現したり再現しなかったりふざけてるし、俺がソースかいてたら絶対こんなバグは入らない
はいでも直して欲しいから報告しましたよ2時間もかけて再現性の低いものをさああああ
バグってなんで入るの?
プログラムにバグとか入れた事ないから全然よくわかんない
0547デフォルトの名無しさん
2012/08/21(火) 01:09:34.71perlと同じ道をたどるんだよ
0548uY
2012/08/21(火) 01:33:38.87rubyの上位互換が今後出てくるなら素直に乗り換える
0549デフォルトの名無しさん
2012/08/21(火) 01:47:09.40Rubyユーザーはnet/httpsを使うためにPerlをインストールするのですよw
0550デフォルトの名無しさん
2012/08/21(火) 01:52:00.92いまいちワンライナー書きづらい。
0551uy
2012/08/21(火) 01:59:21.64perlやrubyって結局毎日プログラミングして無いと意味無いんだろうな
たまにしかコードかかないなら
1文字2文字の違いなんてどうでもいいんだろどうせ
0552デフォルトの名無しさん
2012/08/21(火) 03:12:32.84ノン・プログラマのためのPHP入門10日間コースって本を買ったんだけどさ
windows中心で書かれてて凄く使いずらい
金返せよ失敗した誰か助けて
0553デフォルトの名無しさん
2012/08/21(火) 03:24:02.04末期症状が現れ始めてる気が
railsバブルが完全に終わってしまったからかな?
rubyからはなんの新しいものも出てこない。
0554デフォルトの名無しさん
2012/08/21(火) 03:25:03.230555uY
2012/08/21(火) 04:10:46.94rubyは使われ続ける
0556uy
2012/08/21(火) 04:24:45.16仕様変更がなくなったとわかればここから一気に広まるよ
rubyを使ってない奴の多くは仕様変更を怖がっているだけ
2013年はrubyの年になる
0557uY ◆gXFLM6waxs
2012/08/21(火) 05:14:48.89俺はいまからあと46分で作る
0558uY ◆gXFLM6waxs
2012/08/21(火) 06:01:05.58お前ら雑魚 俺が天才
0559デフォルトの名無しさん
2012/08/21(火) 08:52:27.66ようやくみんなrubyのたちの悪さが分かってきた感じ。
あと心配なのは、rubyの悪評がossや動的言語一般を巻き込んでしまうことだから、
rubyにはできるだけひっそりと死んでいって欲しい。
0560uY ◆gXFLM6waxs
2012/08/21(火) 09:01:49.470561デフォルトの名無しさん
2012/08/21(火) 09:09:41.89この言語はダメだ
やっぱ不安定
0562デフォルトの名無しさん
2012/08/21(火) 09:46:34.89信者キモい
様々な意味で使い物にならない
0563uY ◆gXFLM6waxs
2012/08/21(火) 09:57:40.87俺、昔のruby界隈のログを漁った事があるけど
結局rubyたたいてる奴は元ruby使いであると結論付いた
rubyコミッター側も気持ち悪いけど、アンチ側もすっげー気持ち悪かった
rubyの効率は理解してるけどrubyが嫌いで嫌いでしょうがなくなっちゃった奴らだ
あまりに空虚で、無意味なことにこだわっている
どんだけ2ch内で言語の評判を下げようと上げようと意味はないよ
俺がrubyを触ってから2ch内でのruby評判は落ちたかもしれない
それでもそんなこととは無関係に国際規格になってるし、
Googleでのruby情報の検索ヒット数はどんどん増えている
2年前はPerlより検索ヒット数少なかったからね、普通に伸び続けてるよruby
なんか終わった終わった言ってる奴が多いのはこの板だけ
こんな板を見てるのなんて毎日ほとんど同じ奴なんだよ
毎日この板を見ている奴なんて、日本の中で数百人程度しかいない、
1日板全体で500レスあるか? ないだろう
1人が5レスずつ書き込むとしたら、1日に100人しかこの板を見てない
無意味である
確かにrubyはバグだらけ、俺は他LLをrubyほど使い込んではいないから、他LLのバグ事情は知らない
LLは所詮こんなものなのかもしれないが、そういういいわけを許したくない
0564デフォルトの名無しさん
2012/08/21(火) 16:21:10.86キチガイ乙w
0565デフォルトの名無しさん
2012/08/21(火) 17:28:10.60>>520 はうまいね Rubyだと
p (1..40).zip([1,2,3].cycle,%w[a b].cycle).map{|i,n,s| i%5==0 ? s : n}
かな
最初の仕様だと >>516 と同じようにして
from itertools import cycle
n=cycle([1,2,3])
s=cycle("ab")
print([s.next() if i%5 == 0 else n.next() for i in range(1,25)])
かな
無理やり一時変数をなくすと
from itertools import cycle
print((lambda n,s:[s.next() if i%5 == 0 else n.next() for i in range(1,41)])(cycle([1,2,3]),cycle("ab")))
だろうか? ふつうのPython使いは内部関数を作るのかもしれないけれど
Rubyで >>516から一時変数をなくすなら
p (1..25).map.with_object([1,2,3].cycle,%w[a b].cycle){|i,(n,s)| i%5==0 ? n.next : s.next}
とかかな
0566デフォルトの名無しさん
2012/08/21(火) 17:33:54.93ワンライナーも考えれば、PythonじゃPerlの代わりにはなかなかならない。
もちろんRubyは論外。
Perlなら外部モジュール使ってなければ、10年前に書かれたプログラムでも最新のバージョンで余裕で動くし。
0567デフォルトの名無しさん
2012/08/21(火) 17:46:45.39こんなの"ab"が”abc”になっただけですぐ破綻する。
0568デフォルトの名無しさん
2012/08/21(火) 17:50:41.930569デフォルトの名無しさん
2012/08/21(火) 18:01:58.01最初の数列から4つづつと、次の数列から1つづつ交互に取り出すってことだろうから
Ruby 2.0では
p [1,2,3].cycle.each_slice(4).lazy.zip(%w[a b].cycle).flat_map(&:flatten).take(25).force
ってかけるんだけど
たいして短くはならないな
2.0ではEnumertor::Lazyが導入されるので
Pythonのジェネレーター式やitertoolsみたいに無限列を取り扱えてうれしい
0570デフォルトの名無しさん
2012/08/21(火) 18:10:58.22print((lambda n,s:[s.next() if i%5 == 0 else n.next() for i in range(1,41)])(cycle([1,2,3]),cycle("ab")))
はステキだわぁ〜、これなら破綻しないわぁ〜
0571デフォルトの名無しさん
2012/08/21(火) 18:39:05.580572デフォルトの名無しさん
2012/08/21(火) 19:04:43.95ワンライナーは基本使い捨て。
0573デフォルトの名無しさん
2012/08/21(火) 19:19:26.560574デフォルトの名無しさん
2012/08/21(火) 19:30:10.570575uY
2012/08/21(火) 19:39:58.13俺の当初の目的は無駄の無い短いアルゴリズムでこれを表現するとかじゃなくて
ただの、こういう数列生成メソッドの実装
func( 5 , ["a","b"] , [1,2,3] ).take(20) # => [1, 2, 3, 1, "a", 2, 3, 1, 2, "b", 3, 1, 2, 3, "a", 1]
zipとかcycleでそれほど簡潔に書けない事が分かったし
これからはメソッドに引数与えるだけですし
0576uY
2012/08/21(火) 19:53:34.60y = Enumerator.new do | e |
a = aa.cycle
b = bb.cycle
[*1..n].cycle { |i|
r = (i%n) == 0 ? a : b
e << r.next
}
end
end
y = func 5 , ["a","b"] , [1,2,3]
p y.take(20) # => [1, 2, 3, 1, "a", 2, 3, 1, 2, "b", 3, 1, 2, 3, "a", 1, 2, 3, 1, "b"]
y = func 2 , [true] , [false]
p y.take(20) # => [false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true, false, true]
ゲームでインターバルの制御に使うんです
0577デフォルトの名無しさん
2012/08/21(火) 19:54:38.43ワンライナー自信あったのにね
逆に読みにくくて無駄ばかりってバレちゃったね
0578uY
2012/08/21(火) 20:18:18.610579uY
2012/08/21(火) 20:19:49.670580デフォルトの名無しさん
2012/08/21(火) 20:52:13.29/∵∴∵∴\
/∵∴∵∴∵∴\
/∵∴∴,(・)(・)∴|
|∵∵/ ○ \|
|∵ / 三 | 三 | / ̄ ̄ ̄ ̄ ̄
|∵ | __|__ | < >>579は生きる価値なし
\| \_/ / \_____
\____/
0581デフォルトの名無しさん
2012/08/21(火) 21:08:45.210582デフォルトの名無しさん
2012/08/21(火) 21:09:56.52/∵∴∵∴\
/∵∴∵∴∵∴\
/∵∴∴,(・)(・)∴|
|∵∵/ ○ \|
|∵ / 三 | 三 | / ̄ ̄ ̄ ̄ ̄
|∵ | __|__ | < ワロスワロスww
\| \_/ / \_____
\____/
0583デフォルトの名無しさん
2012/08/21(火) 21:24:46.52バグの温床。
0584デフォルトの名無しさん
2012/08/21(火) 21:27:58.010585デフォルトの名無しさん
2012/08/21(火) 21:28:59.55走査中のやつを破壊的変更するuyとか?
0586デフォルトの名無しさん
2012/08/21(火) 21:31:58.36phpで、classのloadだったらやったことあるぞ。ファイル名と、クラス名の関連付けをjavaみたいにして。人がやってるのも見たことあるから、みんなやってそうだと思ってた。
0587デフォルトの名無しさん
2012/08/21(火) 21:43:49.88どこから持ってきたのか明示せずに関数を呼ぶとかゴミにしか見えないんだが
0588デフォルトの名無しさん
2012/08/21(火) 21:45:55.72バグというか、無理だろ
585 名前:デフォルトの名無しさん[sage] 投稿日:2012/08/21(火) 21:28:59.55
>>579
走査中のやつを破壊的変更するuyとか?
586 名前:デフォルトの名無しさん[sage] 投稿日:2012/08/21(火) 21:31:58.36
>>584
phpで、classのloadだったらやったことあるぞ。ファイル名と、クラス名の関連付けをjavaみたいにして。人がやってるのも見たことあるから、みんなやってそうだと思ってた。
587 名前:デフォルトの名無しさん[sage] 投稿日:2012/08/21(火) 21:43:49.88
それ、どんなメリットがあるの?
0589デフォルトの名無しさん
2012/08/21(火) 21:46:43.490590デフォルトの名無しさん
2012/08/21(火) 21:48:16.01実際には出来ないけど、これ最悪w
0591デフォルトの名無しさん
2012/08/21(火) 21:51:26.340592デフォルトの名無しさん
2012/08/21(火) 21:51:53.70func の中の y の代入が意味不明。
[*1..n].cycle は冗長。
def func(n, aa, bb)
Enumerator.new do |y|
a = aa.cycle
b = bb.cycle
loop{ (n-1).times{ y << b.next }; y << a.next }
end
end
enum = func(5, ["a","b"], [1,2,3])
p enum.take(25)
0594デフォルトの名無しさん
2012/08/21(火) 21:56:04.46>>573
なるほど、そういう風にかけるのか
うまいなぁ
わりと楽しめた問題でした
0595uY
2012/08/21(火) 21:57:15.86お前見たいのを無能な働き者っていうんだよ
デバッグ用に残してるyだから勝手に取らないで
それとお前さあ・・・
loop{
このループの中は
(n-1).times{ y << b.next }; y << a.next
}
nextとかtakeやるたびに呼び出される場所なのに
なんでtimesイテレータとか生成してんだよ
実行速度を考えろよ
さっさとコード元に戻せアホ
0596デフォルトの名無しさん
2012/08/21(火) 21:58:37.68http://www.wolfram.com/training/special-event/mathematica-experts-live-one-liner-competition-2012/
0597uY
2012/08/21(火) 21:59:28.79def func n , aa , bb
Enumerator.new do | e |
a = aa.cycle
b = bb.cycle
[*[b]*n.-(1),a].cycle { |r|
e << r.next
}
end
end
お前らには理解できないと思ってあえて少し処理を残したソースをあげただけ
0598デフォルトの名無しさん
2012/08/21(火) 22:10:40.710599デフォルトの名無しさん
2012/08/21(火) 22:51:30.000600デフォルトの名無しさん
2012/08/21(火) 23:00:56.060601uy
2012/08/21(火) 23:21:18.92ろてえとは俺様ライブラリ内部では使ってる
動的に回すリストの変更も行うからサークルのえぬめらぶる化はしない
こんなものはこのスレ用コードに過ぎない
0602デフォルトの名無しさん
2012/08/21(火) 23:46:16.40この手のtimesはコンパイル時にインライン化されるから
ループ毎の生成コストはかからんだろ、jk
0603uy
2012/08/22(水) 00:00:34.99覚えとこう
0604デフォルトの名無しさん
2012/08/22(水) 00:25:23.91いや、仕様が把握できてる、自ドメインのクラスだけ。
0605デフォルトの名無しさん
2012/08/22(水) 02:45:46.45これからはOS作れる言語が流行る
JSとか
0606デフォルトの名無しさん
2012/08/22(水) 03:37:40.92その意識が逆になった人っている?何が理由でなった?
0607デフォルトの名無しさん
2012/08/22(水) 04:00:04.62Prologではなく?
0608デフォルトの名無しさん
2012/08/22(水) 04:00:52.26そのコードだと、cycleが返すEnumeratorを直接返せばいいのでEnumerator.newは冗長。
更に余分な一時変数省いたら>571になる。
0609uy
2012/08/22(水) 04:55:46.580610uy
2012/08/22(水) 05:05:17.19リスト内包表記のほうが優れてるのは認める
つかrubyは標準ではmapがアホみたいに冗長だけど
改良したmap使えば&とる方法がなくはないからね
このスレのコードなんてrubyの本気じゃない
0611デフォルトの名無しさん
2012/08/22(水) 05:15:19.270612uy
2012/08/22(水) 05:18:38.90module Enumerable
def dmap
DelegateMap.new(self)
end
end
class DelegateMap < BasicObject
def initialize(enum)
@enum = enum
end
def method_missing(mhd, *args, &blk)
@enum.map {|elem| elem.__send__(mhd, *args, &blk) }
end
end
p [*[[1,2,3].cycle]*4,%w[a b].cycle].cycle.take(25).dmap.next
0613uy
2012/08/22(水) 05:19:54.44標準で無限リストを返したいんだよ
take(20)
としても使えて
.next
.next
.next
.next
....
としても使えるEnumuratorがほしい
>>571
だけだと、
takeやった後にnextしてるから無理なのは分かるだろカス
0614uY
2012/08/22(水) 05:20:40.80そのままコードにした方がいいよ。
0615uy
2012/08/22(水) 06:02:48.38>>602
0000 trace 1 ( 5)
0002 trace 1
0004 getdynamic n, 2
0007 putobject 1
0009 opt_minus <ic:4>
0011 send :times, 0, block (3 levels) in func, 0, <ic:1>
0017 pop
0018 trace 1
0020 getdynamic y, 1
0023 getdynamic a, 1
0026 send :next, 0, nil, 0, <ic:2>
0032 opt_ltlt <ic:5>
0034 leave
>0011 send :times, 0, block (3 levels) in func, 0, <ic:1>
>0011 send :times, 0, block (3 levels) in func, 0, <ic:1>
>0011 send :times, 0, block (3 levels) in func, 0, <ic:1>
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
はぁ???
インライン展開されてねーじゃん 死ねば? なんでそういう嘘つくの? >>602
0616uy
2012/08/22(水) 06:31:57.870617デフォルトの名無しさん
2012/08/22(水) 06:55:30.670618デフォルトの名無しさん
2012/08/22(水) 10:03:58.010619uy
2012/08/22(水) 11:07:36.220620uy
2012/08/22(水) 11:51:08.59602 :デフォルトの名無しさん:2012/08/21(火) 23:46:16.40
>>595
この手のtimesはコンパイル時にインライン化されるから
ループ毎の生成コストはかからんだろ、jk
謝る?
0621uy
2012/08/22(水) 12:23:57.12ruby2.0で遅延評価入る、ruby2.0になったら誰も手が出せない
require "enumerable/lazy"
a = [*[[1,2,3].cycle]*4,%w[a b].cycle].cycle.lazy.map(&:next)
p a.take(20).to_a
0622デフォルトの名無しさん
2012/08/22(水) 13:46:32.11深刻なバグが見つかって無効化されたまますでに3年経っているらしい。
腐ってやがる。
0623デフォルトの名無しさん
2012/08/22(水) 14:08:11.500624デフォルトの名無しさん
2012/08/22(水) 18:47:35.690625デフォルトの名無しさん
2012/08/22(水) 19:22:24.25> ループとかのインライン化はYARVの目玉のひとつ
ソース出せよ
0626デフォルトの名無しさん
2012/08/22(水) 20:22:45.27性能はかなり上がってるわけで
0627uy
2012/08/22(水) 21:59:15.64そのくらいのパターンはメタしちゃえばって思う
結局動的言語は総当たりでパターン用意するしかまともにインライン化は無理だと思う
四則演算だけは1〜100の範囲であればメタされてますみたいな機構があれば
タイムズにしても定数が来るならインライン化余裕だろ
つか±256までインライン化できたら絶対違う
メモリ使用量がほんの数百倍になるだけで超高速
はやく無限メモリになったらいい
0628デフォルトの名無しさん
2012/08/22(水) 21:59:40.660629デフォルトの名無しさん
2012/08/23(木) 00:17:54.900630デフォルトの名無しさん
2012/08/23(木) 00:34:46.520631デフォルトの名無しさん
2012/08/23(木) 00:35:30.40あるいは最適化後にメソッドの差し替えが起きたら
最適化を巻き戻さないとプログラムの意味が変わってしまう
大昔からSmalltalk処理系とかで研究されている分野ではあるけど
実装は相当めんどくさい
0632デフォルトの名無しさん
2012/08/23(木) 01:33:51.270633デフォルトの名無しさん
2012/08/23(木) 01:56:37.900634デフォルトの名無しさん
2012/08/23(木) 02:05:07.580635デフォルトの名無しさん
2012/08/23(木) 02:41:35.92def foo():
doc = "The foo property."
def fget(self):
return self._foo
def fset(self, value):
self._foo = value
def fdel(self):
del self._foo
return locals()
foo = property(**foo())
0636デフォルトの名無しさん
2012/08/23(木) 02:44:12.61http://ideone.com/cO6aH
**関数()の意味が知りたいんだけどぐぐってもうまく出てこなくて困る
0637デフォルトの名無しさん
2012/08/23(木) 02:47:16.14最後のニ行は気にしないでくれ
0638uY
2012/08/23(木) 08:19:51.97Python アスタリスクでググレカス
0639uY
2012/08/23(木) 08:25:28.10f{a=$a.clone;$a=->{p 1;a.call}}
loop{$a.call}
それよりこれSEGVでる?
0640uy
2012/08/23(木) 18:25:44.59忘れて
0641デフォルトの名無しさん
2012/08/23(木) 21:20:08.260642うy
2012/08/24(金) 00:25:38.330643uy
2012/08/24(金) 01:06:57.840644デフォルトの名無しさん
2012/08/24(金) 15:27:16.84# -*- coding:uy-8 -*-
0645デフォルトの名無しさん
2012/08/25(土) 14:26:44.12/ / / | ::/| :| `、`、 ヽ
/ / / | ::/ |::| `、',ヽ ', ', r┐ r┐ヾ>
,' i | :/' | | ::/ i:| ', i ヽ i ',. | | lニ コ
,' | ! :,' i|| ::/ || || `、 | | | | レ! _| |.
| | |`i'-,,, | | ::/ | | ', | | | ヽ/(___メ>
| | ||.| `二=,,__,,, ,,,__... -!´ト, | | ,、
. | . i | | //:::C, 7::c\ ||ヘ.| | ((
| .| | / {::::::::::::} {::::::::}`、 ,' .| i ))
| /´'| | ヽ::::::ノ ヾ::ノ .| | ((
| { | |:::::::: , .... | | ))
| \', '',''''' __ ::::::::: | i ((
| .:::', ', / ` ー --、 | | ))
/ .:::::::', :: ', / } / | ((
/ ...:::::::::::'、::. ',、( / ,イ|:: : | `
/ ..:::::::::::/'`、:::.. ',`'' - ,,____ノ,,ィ::´:::i ',:::|:: | / 7
`-ー-´/ /:::::::::/ `、、 ', /`、\:::::::::::::::,':::::::,' |::||:: | ┌‐' 'ー┐ト、
 ̄ ̄/ ./:::::,-{ \ `、、 / \::::::::,'::::::/ .|:i'|: | 7 /_7 / 」__〉
/ // \ \ ヽ/ }::::/:::::/ | |:| 〈_/ヽ_/
0646デフォルトの名無しさん
2012/08/27(月) 23:23:09.44仕事があって長期的に幸せな生活できる言語は何れだ
0647デフォルトの名無しさん
2012/08/28(火) 00:20:03.23英語。
0648デフォルトの名無しさん
2012/08/28(火) 04:36:59.820649デフォルトの名無しさん
2012/08/28(火) 05:46:57.74Rubyが楽だ!
オブジェクト指向をやらないなら、Perlが簡単だ。
0650デフォルトの名無しさん
2012/08/28(火) 05:53:17.94リファレンスは、どこだ?
この名前が衝突していて、エラーになったことがある
0651デフォルトの名無しさん
2012/08/28(火) 06:35:23.56例1 list() の例
http://jp2.php.net/manual/ja/function.list.php
0652デフォルトの名無しさん
2012/08/28(火) 06:49:36.07perlは、どうしてもperlじゃなきゃヤダみたいな奴しか今は積極的には使ってる奴いないと思う
perlは一世を風靡した実績はあるんだけどな
rubyよりもブランド力はあるけど今となってはただの肩書き
0653デフォルトの名無しさん
2012/08/28(火) 08:00:00.30私はPerlをほとんど知らないから聞くけど、CGIはPerlでなくちゃと言う時代ではない。
それでも、Perlの低落する速度が随分とゆっくりなのは、この言語が他の言語に
移行することを困難にする要素を多々持っているからなのだろうか。
0654デフォルトの名無しさん
2012/08/28(火) 08:36:21.11LISP,SmallTalk,Prolog のような風格のある名前にすればもっと流行った。
0655デフォルトの名無しさん
2012/08/28(火) 08:40:53.21rubyとかphpってCGIだと遅くない?
0656デフォルトの名無しさん
2012/08/28(火) 11:18:19.000657デフォルトの名無しさん
2012/08/28(火) 13:19:58.15データベースでも同じこと。
全部メモリ上でやれよ。
0658デフォルトの名無しさん
2012/08/28(火) 13:21:34.93しかし、起動が遅いのはどうにも。
0659uy
2012/08/28(火) 15:04:32.24UnixがどーたらPHPがどーたらっていうエラーログだった
2chはPHPなのかよ
0660デフォルトの名無しさん
2012/08/28(火) 15:34:22.23httpヘッダに書いてあるだろ。素人か。
0661uy
2012/08/28(火) 15:44:00.120662デフォルトの名無しさん
2012/08/28(火) 15:49:14.96毎回見てどうするボケ
0663uy
2012/08/28(火) 16:08:30.88一応聞いてみようかなー
何のためにそんなことを?
0664デフォルトの名無しさん
2012/08/28(火) 16:56:23.73ノ⌒⌒⌒⌒⌒ヽ/ヽir /〜⌒〜⌒〜⌒〜⌒〜⌒〜ヽ.
|人つ人つイつ の r:::::::::'::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::)~~~~ ~~~~~~'-,^^^^"'-
r⌒ヽ| ̄`メ、ル_,.イ´ ̄ | (:::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::_ノtュ、゙ ,'ィt或アチ`、~"'- ,,,,,)
| ,ィ或tュ、,'ィt或アチ| )::::::( ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄| ヽ 二ノ ` ‐''"´ ;,
ンイ ヽ 二ノ ト` ‐''"´ \ (::::) | トェェェェェェイ, :
| ′ トェェェェェェイ,._ 〉 |)::::( く三) (三シ . | ヘヾ'zェェェッ',シ ,:'
| ヘヾ'zェェェッ',シ' | |:::::)  ̄`メ、_,ルィ 、_,.イ´ ̄, .l、 ` ー--‐ '" 、, '"
ヽ__` ー--‐ '"' _ノ ::::| 、,ィ或tュ、゙:ミ {,'ィt或アチ |::::~,/'"/~~~~~/'"/~ヽ
ノ:::::::: ̄ ̄ ̄ ̄ :∧r⌒ヽ|. `ヽ 二ノ ト ` ‐''"´ | `,-' `,-' ::::::ヽ
(::::::::::/ V三'|:::/ ヾ| ヾ ,r'、 ヽ | ̄ ̄ ̄ ̄ ̄ ̄ ̄|:::::::ヽ
/::::::::::|  ̄`メ、_V ィ、_,.| ,/゙ー、 ,r'ヽ |\ / ⌒\ |::::::|
/::::r⌒ヽ| 、,ィ或tュ、ミ {'ヽンイ ,ノ `'" ,丶. |ヽノ ヽ/⌒ヽノ |::::::|
〈:::::::| `ヽ 二ノ ト ` ‐''|. ′ トェェェェェェイ,._ 〉∴ |ュ、゙:ミ {,'ィt或アチ |::::::|
〈::::::::ゝ_イ ,r'、 ヽ | ∴∵ ヘヾ'zェェェッ',シ'∵∴|ノ ト ` ‐''"´ |ヽ⌒r
レっ::::::::::ヽ ,/゙ー、 ,r''ヽ | ∵∴∵ ` ー--‐ '"''´∵∴| i ,、 ,..、ヽ |
ヽ〜´~ヽ ,ノ `'" ,丶| ∵∴∵∴∵∴∵∴∴ |トェェェェェェイ,._〉 |
\ トェェェェェェイ,. | ∵∴∵∴∵∴∵∴∴∵|ヾ'zェェェッ',シ 、ン
ヽ ヾ'zェェェッ',シ \ ∵∴∵∴∵∴∵∴/_` ー--‐ '" ___/
0665デフォルトの名無しさん
2012/08/28(火) 16:57:30.51/ ..::;|
/....::::;;;;;;| /\
/ ....::::;;;;;;| /| / ..::;;\
/ ....::::;;;;;;;;|__ /..::;;;lへ / ...:::;;;;;\
/  ̄ ─ ___ /....::::;;;;;;|;;;;;;\ _/ ....::::;;;;;;\
/ /  ̄ ‐-' .....::::;;;;;;;;|;;;;;;;;;;;\ _-― ̄ ̄ ...::::;;;;;;;;;\
、、_j_j_j_ ,. ....::::;;;;;;;;;;;;;|;;;;;;;;;;;;;;;;\_,-― ̄ ...:::;;;;;;;;;\
、_>';三●;=}`メ._, ....::::;;;;;;;;;|;;;;;;;;;;;;;;::::.... \:;;;;;;;ヽ
く( ゞ'丕シ ヽ_, \;;;;;;;|;;;;;;;;::::.... 、、_j_j_j_ , ....::::;;;;;;;ヽ
´ ニ=;ゞ、______,ム 、、_j_j_j_ , ....::::;;;;;;;;|;;;;;;;::::.... 、_γ'"~ 乙メノ_,...:::;;;;;;;ヽ
´ ゙ ゙ ` ` 、_,>''"~ ̄ `メ._,;;;;;;;;;;;|;;;;;、、_j_j_j_ ,; 、γ {三●)>..::::;;;;;;;;;ヽ
く(,r'乙W△. ヽ_, ;;;;;|γ△ ̄ ~ ` メ ,; ム、_____,ゞ'丕ニ` ...:::;;;;;;;;ヽ
γ ´ ニ=;●;=}______,ム ;;;;;|●;=} )> ´ ゙ ゙ ` ` ...:::;;;;;;;;ヽ
/ ´ ゙ ゙ ` `::;;;;;;;;|'丕シ__,_、、=ニ` ..:::::;;;;;;|
0666デフォルトの名無しさん
2012/08/28(火) 17:17:43.56有名サイトのヘッダくらい好奇心で覗いてみようよ
パケットキャプチャしてみようよ
2chのヘッダは2chに書き込むくらいのネラーなら知っていて当然だと思うけどね
俺は他にcookpad twitter facebookのヘッダを見たりしてるぞ
0667デフォルトの名無しさん
2012/08/28(火) 17:31:49.13普段行くサイトを全部見たりは流石にしないが
少なくとも「何故」とは思わない
0668デフォルトの名無しさん
2012/08/28(火) 17:37:21.680669デフォルトの名無しさん
2012/08/28(火) 17:42:30.32お前何様なんですか?
何が当然だよ。
0670デフォルトの名無しさん
2012/08/28(火) 17:46:27.65ノ⌒⌒⌒⌒⌒ヽ/ヽir /〜⌒〜⌒〜⌒〜⌒〜⌒〜ヽ.
|人つ人つイつ の r:::::::::'::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::)~~~~ ~~~~~~'-,^^^^"'-
r⌒ヽ| ̄`メ、ル_,.イ´ ̄ | (:::::::: :::::::::::::::::::::::::::::::::::::::::::::::::::_ノtュ、゙ ,'ィt或アチ`、~"'- ,,,,,)
| ,ィ或tュ、,'ィt或アチ| )::::::( ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄| ヽ 二ノ ` ‐''"´ ;,
ンイ ヽ 二ノ ト` ‐''"´ \ (::::) | トェェェェェェイ, :
| ′ トェェェェェェイ,._ 〉 |)::::( く三) (三シ . | ヘヾ'zェェェッ',シ ,:'
| ヘヾ'zェェェッ',シ' | |:::::)  ̄`メ、_,ルィ 、_,.イ´ ̄, .l、 ` ー--‐ '" 、, '"
ヽ__` ー--‐ '"' _ノ ::::| 、,ィ或tュ、゙:ミ {,'ィt或アチ |::::~,/'"/~~~~~/'"/~ヽ
ノ:::::::: ̄ ̄ ̄ ̄ :∧r⌒ヽ|. `ヽ 二ノ ト ` ‐''"´ | `,-' `,-' ::::::ヽ
(::::::::::/ V三'|:::/ ヾ| ヾ ,r'、 ヽ | ̄ ̄ ̄ ̄ ̄ ̄ ̄|:::::::ヽ
/::::::::::|  ̄`メ、_V ィ、_,.| ,/゙ー、 ,r'ヽ |\ / ⌒\ |::::::|
/::::r⌒ヽ| 、,ィ或tュ、ミ {'ヽンイ ,ノ `'" ,丶. |ヽノ ヽ/⌒ヽノ |::::::|
〈:::::::| `ヽ 二ノ ト ` ‐''|. ′ トェェェェェェイ,._ 〉∴ |ュ、゙:ミ {,'ィt或アチ |::::::|
〈::::::::ゝ_イ ,r'、 ヽ | ∴∵ ヘヾ'zェェェッ',シ'∵∴|ノ ト ` ‐''"´ |ヽ⌒r
レっ::::::::::ヽ ,/゙ー、 ,r''ヽ | ∵∴∵ ` ー--‐ '"''´∵∴| i ,、 ,..、ヽ |
ヽ〜´~ヽ ,ノ `'" ,丶| ∵∴∵∴∵∴∵∴∴ |トェェェェェェイ,._〉 |
\ トェェェェェェイ,. | ∵∴∵∴∵∴∵∴∴∵|ヾ'zェェェッ',シ 、ン
ヽ ヾ'zェェェッ',シ \ ∵∴∵∴∵∴∵∴/_` ー--‐ '" ___/
0671デフォルトの名無しさん
2012/08/28(火) 18:05:00.19黙れよバーカ
0672デフォルトの名無しさん
2012/08/28(火) 18:18:27.39curl -I $url
0673デフォルトの名無しさん
2012/08/28(火) 18:28:24.85でもHEADだとGETと違うヘッダを返すようなとこもあるから、-iのがいい時も。
0674uy
2012/08/29(水) 15:43:43.00[ ->n{ v = n } , ->{ v } ]
end
a , b = f 4
p b.call #=> 4
a.call 20
p b.call #=> 20
天才的なゲッターセッター
0675デフォルトの名無しさん
2012/08/29(水) 17:35:56.74これならローグライクなASCII文字にでもした方がマシそうなもんだけど
あいつら、もう少しバカを教育するようなアカデミックなサービスでも提供できないのか
0676デフォルトの名無しさん
2012/08/29(水) 23:02:04.31タイアップしてるんだろう。
それがどれか知らないけど。
0677デフォルトの名無しさん
2012/08/29(水) 23:31:57.02継承は論外のゴミだし、セッタゲッタもクロージャで出来るし
本当にOOPはゴミだったな
0678デフォルトの名無しさん
2012/08/29(水) 23:36:26.650679デフォルトの名無しさん
2012/08/29(水) 23:58:47.830680デフォルトの名無しさん
2012/08/30(木) 00:11:59.60オブジェクト指向相当のものができるようになるのは有名な話じゃないの
Paul Grahamの『ANSI Common Lisp』の最終章あたりで
Lispにマクロをかぶせて簡易オブジェクト指向言語を構築する話があったはず
0681デフォルトの名無しさん
2012/08/30(木) 00:18:55.980682デフォルトの名無しさん
2012/08/30(木) 00:31:06.46型を表現しようとするとCのポインタ型と同じ位の難易度がある
0683デフォルトの名無しさん
2012/08/30(木) 00:34:27.54Rubyは環境整えるのが面倒なんだよね。
その上、その環境にも流行り廃りが早いし。
知識の陳腐化が早い。
その点、PHPやPerlは互換性高いから過去の知識を活かせる。
CGIで動かしてもそこそこ早いし。
0684デフォルトの名無しさん
2012/08/30(木) 01:46:07.680685デフォルトの名無しさん
2012/08/30(木) 02:05:12.06アクセス量少ないならApacheのリビルドや
モジュールの導入不要。
.rhtmlもconfの書き換えだけでどうにかなる。
あと互換性に関しては
PHP・Perlもバージョンアップで
かなり言語仕様いじってるからw
0686デフォルトの名無しさん
2012/08/30(木) 02:16:05.100687デフォルトの名無しさん
2012/08/30(木) 02:26:44.75イテレーターの識別子のスコープぐらいだろ。
Perl6のようなドラスティックな大変化はRubyでは起きていないじぇ?
0688デフォルトの名無しさん
2012/08/30(木) 02:30:05.92文字リテラルの型も変わったかと
0689デフォルトの名無しさん
2012/08/30(木) 02:33:01.25いつも落ちてる。
KENTの掲示板の毛が生えた程度の低機能ソフトなのに。
Rubyだからかな。
0690デフォルトの名無しさん
2012/08/30(木) 02:38:41.930691デフォルトの名無しさん
2012/08/30(木) 03:15:45.260692デフォルトの名無しさん
2012/08/30(木) 03:21:35.83いくら日本人が英語を勉強したところで
本人のリーディング速度は日本語の方が速い
0693デフォルトの名無しさん
2012/08/30(木) 03:22:40.790694uy
2012/08/30(木) 03:25:12.390695デフォルトの名無しさん
2012/08/30(木) 06:01:28.712ちゃんやってるうちに汚れてしまった
質問しても、揚げ足・コピペ・上から目線
もともと過疎だったのが、ますます過疎化していくんですよねぇ
0696デフォルトの名無しさん
2012/08/30(木) 07:13:58.61ちょうどJAVAが注目され始めた時期からこうなったんだ
あいつが全部悪い
世界で最も優れた言語の1つでもあるrubyやっていれば救われるのに
0697デフォルトの名無しさん
2012/08/30(木) 07:22:03.210698デフォルトの名無しさん
2012/08/30(木) 07:31:20.47公開鯖で使うにはいろいろと手間がかかりすぎる
0699デフォルトの名無しさん
2012/08/30(木) 07:50:13.61モルモン産だからっ!
0700デフォルトの名無しさん
2012/08/30(木) 07:53:42.090701デフォルトの名無しさん
2012/08/30(木) 15:08:10.100702デフォルトの名無しさん
2012/08/30(木) 15:18:52.78cならcgiじゃなくてapacheのmodにした方がよくね?
0703デフォルトの名無しさん
2012/08/30(木) 15:48:56.05/ ̄ ̄ ̄ ̄\,, / __,,,,,,,,,,,,__ \ > | |イアン|ジャイアンジャイアl
/_____ ヽ / /エモンドラエヽ \ > _______ | |゙ャイアンジャイアンジャイl
|ビタノビタノビタノ| | / /ドラエモンドラエモ\ ヽ  ̄ |オスネオスネス\| | /ジャイアンジャイアンジャ
|ノビタノビタノビタ|___/ |/.モンドラエモンドラエモントヽ | _ |スネオスネオスネVオスi |ンジャイアンジャイアンジャ|
|タノビタノビタノビ 6 l |エモンドラエモンドラエモンド| | \スネオスネオスネオスネ丿 |イアンジャイアンジャイアン|
. ヽノビタノビタノビタ,-′ |.エモンドラエモンドラエモンド| l \ネオスネオスネオ/ \ャイアンジャイアンジ/
ヽビタノビタノ/ヽ ヽエモンドラエモンドラエモン/ / /オスネオスネオく / ヽ
/ ヽ \モンドラエモンドラエモ/ /  ̄/ ヽ / ヽ
| | | o━━━━━━━━┥ | | | | | |
シュッ i||!| | | シュッ i||!|/ | シュッ i||!| | | シュッ i||!| | |
シュッ i|!i|!i ノ _____| シュッ i|!i|!i | シュッ i|!i|!i ノ _____|シュッ i|!i|!i ノ _______ |
( / ( o / ( / ( /
ヽ───┴─ ′ ヽ─────── ′ ヽ───┴─ ヽ--───┴──
0704デフォルトの名無しさん
2012/08/30(木) 15:49:49.26ヾ;ヽ、 _ _,ィシ'
`゙`フJ=、
」|,、-'⌒ヽ_
|i;;;;;i _(`ヽ--゙- 、
r',、-'´ L;;;ヾヽ、
/;;;;;r' rー _,ヾ;!. \
./L;;;;i ;i ;!i ヾー、゙! ____ ヽ
/ i;;i _} ノ;ノく;;. {;l; ,j. { *.} `! ヽ
.! i;;i,、=_‐''ヽヾ;ヽ \ヽ;==く;:〈 ゙、
| 7/ {.*.} _/ノi;;( ヽ \ ヾ;;、 ゙i,
| | L、-゙=シ |;;;:.. ヽ、 \ヾ;、 l
| `゙'i;;;:i ヾ' __ _,rミ`ヾ;!じ' |
.! ,: ;;, i;;;:i /Vr‐、,.-'゙_,ノ゙\;;;:. !
゙i;;:;;;;;:;,.,.,..i;;:i,.,.,,;;/ r─‐''''"_,.ィヾー》;:.|
゙、;;;; ;;;;;;;;;゙i;i;;;;;;/ / ,r'i'''T´゙L、-ク:| |;;;;;|
ヽ;i ヾ;;;::゙i;゙i;:| ,j /ヾー^"__,.-rj;ツ };;;j
\;;;;;;;;;ヾ'ヽ<ヽj´|´゙! _j=' ./;;/
\;;;;;;;;;;;;;;;;;;\`゙''"´_,、-'゙;;;;;/
゙ヽ、;;;;;;;;;;;;;;;`゙"_,,、-'´/
`゙'''''ー--─'''´
0705デフォルトの名無しさん
2012/08/30(木) 15:50:37.91ヾ;ヽ、 _ _,ィシ'
`゙`フJ=、
」|,、-'⌒ヽ_
|i;;;;;i _(`ヽ--゙- 、
r',、-'´ L;;;ヾヽ、
/;;;;;r' rー _,ヾ;!. \
./L;;;;i ;i ;!i ヾー、゙! ____ ヽ
/ i;;i _} ノ;ノく;;. {;l; ,j. { *.} `! ヽ
.! i;;i,、=_‐''ヽヾ;ヽ \ヽ;==く;:〈 ゙、
| 7/ {.*.} _/ノi;;( ヽ \ ヾ;;、 ゙i,
| | L、-゙=シ |;;;:.. ヽ、 \ヾ;、 l
| `゙'i;;;:i ヾ' __ _,rミ`ヾ;!じ' |
.! ,: ;;, i;;;:i /Vr‐、,.-'゙_,ノ゙\;;;:. !
゙i;;:;;;;;:;,.,.,..i;;:i,.,.,,;;/ r─‐''''"_,.ィヾー》;:.|
゙、;;;; ;;;;;;;;;゙i;i;;;;;;/ / ,r'i'''T´゙L、-ク:| |;;;;;|
ヽ;i ヾ;;;::゙i;゙i;:| ,j /ヾー^"__,.-rj;ツ };;;j
\;;;;;;;;;ヾ'ヽ<ヽj´|´゙! _j=' ./;;/
\;;;;;;;;;;;;;;;;;;\`゙''"´_,、-'゙;;;;;/
゙ヽ、;;;;;;;;;;;;;;;`゙"_,,、-'´/
`゙'''''ー--─'''´
0706デフォルトの名無しさん
2012/08/30(木) 15:51:14.51ヾ;ヽ、 _ _,ィシ'
`゙`フJ=、
」|,、-'⌒ヽ_
|i;;;;;i _(`ヽ--゙- 、
r',、-'´ L;;;ヾヽ、
/;;;;;r' rー _,ヾ;!. \
./L;;;;i ;i ;!i ヾー、゙! ____ ヽ
/ i;;i _} ノ;ノく;;. {;l; ,j. { *.} `! ヽ
.! i;;i,、=_‐''ヽヾ;ヽ \ヽ;==く;:〈 ゙、
| 7/ {.*.} _/ノi;;( ヽ \ ヾ;;、 ゙i,
| | L、-゙=シ |;;;:.. ヽ、 \ヾ;、 l
| `゙'i;;;:i ヾ' __ _,rミ`ヾ;!じ' |
.! ,: ;;, i;;;:i /Vr‐、,.-'゙_,ノ゙\;;;:. !
゙i;;:;;;;;:;,.,.,..i;;:i,.,.,,;;/ r─‐''''"_,.ィヾー》;:.|
゙、;;;; ;;;;;;;;;゙i;i;;;;;;/ / ,r'i'''T´゙L、-ク:| |;;;;;|
ヽ;i ヾ;;;::゙i;゙i;:| ,j /ヾー^"__,.-rj;ツ };;;j
\;;;;;;;;;ヾ'ヽ<ヽj´|´゙! _j=' ./;;/
\;;;;;;;;;;;;;;;;;;\`゙''"´_,、-'゙;;;;;/
゙ヽ、;;;;;;;;;;;;;;;`゙"_,,、-'´/
`゙'''''ー--─'''´
0707デフォルトの名無しさん
2012/08/30(木) 15:51:57.76ヾ;ヽ、 _ _,ィシ'
`゙`フJ=、
」|,、-'⌒ヽ_
|i;;;;;i _(`ヽ--゙- 、
r',、-'´ L;;;ヾヽ、
/;;;;;r' rー _,ヾ;!. \
./L;;;;i ;i ;!i ヾー、゙! ____ ヽ
/ i;;i _} ノ;ノく;;. {;l; ,j. { *.} `! ヽ
.! i;;i,、=_‐''ヽヾ;ヽ \ヽ;==く;:〈 ゙、
| 7/ {.*.} _/ノi;;( ヽ \ ヾ;;、 ゙i,
| | L、-゙=シ |;;;:.. ヽ、 \ヾ;、 l
| `゙'i;;;:i ヾ' __ _,rミ`ヾ;!じ' |
.! ,: ;;, i;;;:i /Vr‐、,.-'゙_,ノ゙\;;;:. !
゙i;;:;;;;;:;,.,.,..i;;:i,.,.,,;;/ r─‐''''"_,.ィヾー》;:.|
゙、;;;; ;;;;;;;;;゙i;i;;;;;;/ / ,r'i'''T´゙L、-ク:| |;;;;;|
ヽ;i ヾ;;;::゙i;゙i;:| ,j /ヾー^"__,.-rj;ツ };;;j
\;;;;;;;;;ヾ'ヽ<ヽj´|´゙! _j=' ./;;/
\;;;;;;;;;;;;;;;;;;\`゙''"´_,、-'゙;;;;;/
゙ヽ、;;;;;;;;;;;;;;;`゙"_,,、-'´/
`゙'''''ー--─'''´
0708デフォルトの名無しさん
2012/08/30(木) 15:54:11.46ヾ;ヽ、 _ _,ィシ'
`゙`フJ=、
」|,、-'⌒ヽ_
|i;;;;;i _(`ヽ--゙- 、
r',、-'´ L;;;ヾヽ、
/;;;;;r' rー _,ヾ;!. \
./L;;;;i ;i ;!i ヾー、゙! ____ ヽ
/ i;;i _} ノ;ノく;;. {;l; ,j. { *.} `! ヽ
.! i;;i,、=_‐''ヽヾ;ヽ \ヽ;==く;:〈 ゙、
| 7/ {.*.} _/ノi;;( ヽ \ ヾ;;、 ゙i,
| | L、-゙=シ |;;;:.. ヽ、 \ヾ;、 l
| `゙'i;;;:i ヾ' __ _,rミ`ヾ;!じ' |
.! ,: ;;, i;;;:i /Vr‐、,.-'゙_,ノ゙\;;;:. !
゙i;;:;;;;;:;,.,.,..i;;:i,.,.,,;;/ r─‐''''"_,.ィヾー》;:.|
゙、;;;; ;;;;;;;;;゙i;i;;;;;;/ / ,r'i'''T´゙L、-ク:| |;;;;;|
ヽ;i ヾ;;;::゙i;゙i;:| ,j /ヾー^"__,.-rj;ツ };;;j
\;;;;;;;;;ヾ'ヽ<ヽj´|´゙! _j=' ./;;/
\;;;;;;;;;;;;;;;;;;\`゙''"´_,、-'゙;;;;;/
゙ヽ、;;;;;;;;;;;;;;;`゙"_,,、-'´/
`゙'''''ー--─'''´
0709デフォルトの名無しさん
2012/08/30(木) 15:55:30.82やはりperlは難易度高いでしょうか?
今までBasicしかやったことありません。
0710デフォルトの名無しさん
2012/08/30(木) 15:58:56.08basicとかgosub地獄で難易度高すぎだよ。
0711デフォルトの名無しさん
2012/08/30(木) 16:03:36.610712デフォルトの名無しさん
2012/08/30(木) 16:04:11.470713デフォルトの名無しさん
2012/08/30(木) 16:07:24.38難しいし必要ないです。
だいたいプログラミング言語大杉なんですよ。
0714デフォルトの名無しさん
2012/08/30(木) 16:08:28.120715デフォルトの名無しさん
2012/08/30(木) 16:14:08.12javawwwwwwwwwwwwwwwwwwwwww
いつの言語だよwwwwwwwwwwww
お前さぁwwwwwwwwwwwwwwwwww
やっぱりOs勉強すればいいんじゃないか
0716デフォルトの名無しさん
2012/08/30(木) 16:15:09.23モルモン産だからっ!
0717デフォルトの名無しさん
2012/08/30(木) 16:17:17.350718デフォルトの名無しさん
2012/08/30(木) 16:19:08.932012.8.30 13:15
http://sankei.jp.msn.com/affairs/news/120830/crm12083013160012-n1.htm
女性のスカート内を録画機能付き携帯型音楽プレーヤー「iPod」で盗撮したとして、
東京都迷惑防止条例違反容疑で、日本IBMの大歳卓麻元社長(63)が警視庁四谷署の
取り調べを受けていたことが30日、捜査関係者への取材で分かった。同署は書類送検する方針。
捜査関係者によると、大歳元社長は、22日午前8時ごろ、新宿区四谷のJR四ツ谷駅の
エスカレーターで前に立っていた女性のスカート内にiPodを入れて下着などを盗撮した
疑いが持たれている。盗撮を認めているという。
大歳元社長は現在、同社の最高顧問を務めている。
0719デフォルトの名無しさん
2012/08/30(木) 16:21:05.84スレ違い
ボケ
0720デフォルトの名無しさん
2012/08/30(木) 16:23:23.433年になったら何言語やるんでしょう?
1年 C java Basic Javascript ruby
2年 C++ perl
な感じです。
2学期後期は何ですか?
0721デフォルトの名無しさん
2012/08/30(木) 16:24:37.36恥ずかしすぎるwwwwwwwwwwww
0722デフォルトの名無しさん
2012/08/30(木) 16:35:15.64大学名聞かなきゃわかんないな。
設計を教えない学校があるのがさっぱりわからん。
0723デフォルトの名無しさん
2012/08/30(木) 16:42:37.93学生なら年度ごとにシラバスもらってるはずだからそれ見ればわかるよ
0725デフォルトの名無しさん
2012/08/30(木) 16:44:40.90おっぱい?
0726デフォルトの名無しさん
2012/08/30(木) 16:47:06.93もっと意味のある文字列にすればいいのに
ところでWindowsにはパイソンソフトありますか?
教えろカス共
0727デフォルトの名無しさん
2012/08/30(木) 16:48:42.030728デフォルトの名無しさん
2012/08/30(木) 16:50:18.650729デフォルトの名無しさん
2012/08/30(木) 16:54:23.650730デフォルトの名無しさん
2012/08/30(木) 17:05:30.080731デフォルトの名無しさん
2012/08/30(木) 17:21:11.180732デフォルトの名無しさん
2012/08/30(木) 17:28:14.03ネーミングセンスなし
0733デフォルトの名無しさん
2012/08/30(木) 17:30:54.760734デフォルトの名無しさん
2012/08/30(木) 17:31:24.77/ ̄ ̄ ̄ ̄\,, / __,,,,,,,,,,,,__ \ > | |イアン|ジャイアンジャイアl
/_____ ヽ / /エモンドラエヽ \ > _______ | |゙ャイアンジャイアンジャイl
|ビタノビタノビタノ| | / /ドラエモンドラエモ\ ヽ  ̄ |オスネオスネス\| | /ジャイアンジャイアンジャ
|ノビタノビタノビタ|___/ |/.モンドラエモンドラエモントヽ | _ |スネオスネオスネVオスi |ンジャイアンジャイアンジャ|
|タノビタノビタノビ 6 l |エモンドラエモンドラエモンド| | \スネオスネオスネオスネ丿 |イアンジャイアンジャイアン|
. ヽノビタノビタノビタ,-′ |.エモンドラエモンドラエモンド| l \ネオスネオスネオ/ \ャイアンジャイアンジ/
ヽビタノビタノ/ヽ ヽエモンドラエモンドラエモン/ / /オスネオスネオく / ヽ
/ ヽ \モンドラエモンドラエモ/ /  ̄/ ヽ / ヽ
| | | o━━━━━━━━┥ | | | | | |
シュッ i||!| | | シュッ i||!|/ | シュッ i||!| | | シュッ i||!| | |
シュッ i|!i|!i ノ _____| シュッ i|!i|!i | シュッ i|!i|!i ノ _____|シュッ i|!i|!i ノ _______ |
( / ( o / ( / ( /
ヽ───┴─ ′ ヽ─────── ′ ヽ───┴─ ヽ--───┴──
0735デフォルトの名無しさん
2012/08/30(木) 17:40:35.940736デフォルトの名無しさん
2012/08/30(木) 21:41:28.990737デフォルトの名無しさん
2012/08/30(木) 22:20:33.950738デフォルトの名無しさん
2012/08/30(木) 22:29:50.73モルモン産だからっ!
0739デフォルトの名無しさん
2012/08/30(木) 22:32:41.490740デフォルトの名無しさん
2012/08/30(木) 22:33:36.820741デフォルトの名無しさん
2012/08/31(金) 00:38:34.370742デフォルトの名無しさん
2012/08/31(金) 01:24:19.38専門学校は大学じゃないだろ
それにしても本当に役に立たない講義ばっかだこと
0743デフォルトの名無しさん
2012/08/31(金) 01:27:43.86というか大学生は情報系でもあまりプログラミング出来ない
0744デフォルトの名無しさん
2012/08/31(金) 01:37:16.77ただ、プログラミングできちゃうと設計の勉強しない奴が多くて困る。プログラミング能力がイマイチで、破綻したりするやつの方がいいのかな。
0745デフォルトの名無しさん
2012/08/31(金) 01:55:03.30大学で学ぶのはロボティクスやニューラルネット、パーサーだとか
基本的には下位レイヤーでしか役立たないよ
てか、専門学校の内容って業務系以外で役に立たないでしょ
0746デフォルトの名無しさん
2012/08/31(金) 01:57:54.150747デフォルトの名無しさん
2012/08/31(金) 01:59:12.820748デフォルトの名無しさん
2012/08/31(金) 02:08:37.81てか、業務系でやってることは何れもjavaで十分に見えるんだけど、
専門学校の講師供はカリキュラムを見直せよ
0749デフォルトの名無しさん
2012/08/31(金) 02:16:36.31中小企業が全体の99.7%を占めるって知ってる?
何が言いたいかというと、必要とされる仕事ってのは
中小企業でやる仕事がほとんどってことだよ。
大学でた人は0.3%よりもはるかに多いだろ?
つまり、大学でた人の殆どは中小企業に就職する。
じゃあ中小企業で何をやるか、
自ずとどんな仕事が多いかわかるだろう?
そんな高度で立派な仕事なんてまず必要とされないから。
0750デフォルトの名無しさん
2012/08/31(金) 02:18:55.26基本的に中小企業の経営者は計算機の世界に理解がないし、学歴もダメw
ジジイの資産を肥やすなら大卒のベンチャーに就職した方がまだマシだよ
0751デフォルトの名無しさん
2012/08/31(金) 02:24:32.47専門は全てにおいて大学に劣る
専門知識に特化するわけじゃなくて大学生とくらべて専門知識しか持ってないだけの話
0752デフォルトの名無しさん
2012/08/31(金) 02:37:40.45その質はピンキリなわけだから、雲をつかむような話にしかならんよ
0753デフォルトの名無しさん
2012/08/31(金) 02:40:40.84だいたい新しい言語ってプロジェクトに参加してから働きながら覚えるものじゃないのか?
ガベコレ付きの、それも賞味が切れた言語ばかり教えてどうすんのさ
あれじゃ、ピラミッド構造の最下層でコーダーするためにあるようなものじゃないか
あれならc++とjsのイディオム集にでも時間割いた方がマシだよ
カリキュラムが本質的に馬鹿げている。
0754デフォルトの名無しさん
2012/08/31(金) 02:45:18.82いろんな言語やっといて基礎が身についてないと、新しい言語の理解も遅いと思うけどね。
lispを理解したら今まで使ってた言語も、よりわかるようになったよ。
0755デフォルトの名無しさん
2012/08/31(金) 02:48:56.29大学はcとscheme/prolog/ocamlあたりしか教えないよ
それ以外はプログラミングアプローチとして新しいものがないってさ
せめてOOPとデザパタぐらいはカリキュラムを新しくして欲しいところ
0756デフォルトの名無しさん
2012/08/31(金) 02:53:44.500757デフォルトの名無しさん
2012/08/31(金) 02:55:43.920758デフォルトの名無しさん
2012/08/31(金) 02:56:44.730759デフォルトの名無しさん
2012/08/31(金) 02:59:14.66その一部をカバーするために使用される言語としてJavaが使われることもあるというだけ
標準的な手続き型言語+オブジェクト指向プログラミングぐらいまでは対応できる
その他、低水準な部分にはCだろうし、計算理論ではSchemeかもしれないし
情報理論とか形式言語論ならプログラミング言語すら使わず数式ばっかりかもしれない
アルゴリズム論とかであればスクリプト言語が適当かもしれない
実際Python/Rubyを入門に使ってる大学もあるそうだし
0760デフォルトの名無しさん
2012/08/31(金) 03:05:10.80社会に出て必要になる知識は少ない。
0761デフォルトの名無しさん
2012/08/31(金) 03:09:49.47プログラミングだけじゃ、何かを作るとこまで行かない。
0762デフォルトの名無しさん
2012/08/31(金) 03:12:34.49自然言語処理やAIで研究室に所属する前の夏あたりでpython/rubyの自習でもするもんだよ
制御はoctave/matlabで論文の数式ガリガリやってたはず
並列処理みたく計算量が多いとこはcしかやってなかったな
javaで実装するのは面倒で、どっちかっていうとc++の方が好まれるじゃないかな
どんどんc++の新しい機能を覚えて、c++が大好きになって、最後には大嫌いになる
smalltalkerやhaskellerの教授が居たら、そこの研究室に行く方が幸せだと思うよ
転職時においしい業界に移れる可能性は高まるから
>>760
そのレスからは底辺臭しかしない
0763デフォルトの名無しさん
2012/08/31(金) 03:12:52.74企業側としても、金にならない研究がしたいならウチに来ないで大学に残れと思ってる
大卒を欲しいとすれば、研究する過程で身につけた問題解決能力だろう
専門学校でもそれをうまく教育出来れば良いが、もともと地頭が悪い学生だから上手くいかないんだろうな
大学行って当たり前みたいな風潮が間違ってる。殆どのしょぼい大卒は下っ端になるだけだから
専門学校に行けば良い
0764デフォルトの名無しさん
2012/08/31(金) 03:19:57.85それにIT業界から脱出するなら学歴はあった方が良いからね
専門学校程度のカリキュラムなら大学へ行く方がまだマシだよ
学のない馬鹿な経営者に騙されずに済むからね
0765uy
2012/08/31(金) 03:21:35.57論外的に才能ない奴はすぐ挫折していなくなるから、かえってそのほうが早期にIT脱出できて幸せなんじゃね
大学だと才能なくてもやめずに4年間ズルズルとやり続けて産廃になってる可能性もある
才能がないなら早めにリターンしたほうが絶対良い
0766デフォルトの名無しさん
2012/08/31(金) 03:27:52.89学歴があった方がいいのは事実だが、いまどき大卒なんて普通すぎて意味なし
0767デフォルトの名無しさん
2012/08/31(金) 03:32:43.03最終学歴で初任給が決まるし世の中の面接官の多くは今でも学歴で人を見るんじゃないかな
それに情報科へ興味もなく入った奴は、さっさと別の業界へ行くからね。
出版とか気球乗りとか工員、外食、パチ屋とか
ああそうだ、上流工程ならパワーポイントだけで済むらしいよ!
0768デフォルトの名無しさん
2012/08/31(金) 03:40:36.56web系なんてコンテンツビジネスばかりだし、
今後は専門的な記事を書くライターが増えるんじゃないか?
0769デフォルトの名無しさん
2012/08/31(金) 03:42:10.630770デフォルトの名無しさん
2012/08/31(金) 03:42:43.86論外までくらいなら進学する前に気付けよ。
0771デフォルトの名無しさん
2012/08/31(金) 03:45:21.51教員免許や公務員試験、TOEICの対策ぐらい簡単に出来そうなもんだけどね
0772uy
2012/08/31(金) 03:53:29.61内情を知らないのか
1年で3分の1は消えるらしいよ
俺のいってたところはもっとだったが
0773デフォルトの名無しさん
2012/08/31(金) 03:55:19.53なるほど。専門だとこういうのが育つのか。
0774デフォルトの名無しさん
2012/08/31(金) 03:58:05.13プログラマになって1年で3分の1が辞めたってことか?いい気味だ。ザマーミロ
俺の知ってる連中はhello worldぐらいしか書けなかったぞw
GUI?ライブラリ?何それオイシイの?HSPスゲーだってさ。お前ら死ねよ
0775デフォルトの名無しさん
2012/08/31(金) 07:08:09.840776デフォルトの名無しさん
2012/08/31(金) 18:29:48.32モルモン産だからっ!
0777デフォルトの名無しさん
2012/08/31(金) 18:57:58.540778デフォルトの名無しさん
2012/08/31(金) 20:51:24.050779デフォルトの名無しさん
2012/08/31(金) 20:55:50.16やつらはよく辞める。
0780デフォルトの名無しさん
2012/08/31(金) 21:05:17.64公務員やカリスマ塾講師()でもやった方がマシな人生だ
ソフトウェア開発なんてGNUに魂捧げたマヌケだけで十分だよ
0781デフォルトの名無しさん
2012/08/31(金) 23:02:07.770782デフォルトの名無しさん
2012/08/31(金) 23:17:56.90はっきりしろよ
0783デフォルトの名無しさん
2012/08/31(金) 23:52:41.44大学教授は頭いいことは認めるけどあいつら研究本当にやってんの?
大学によると思うんだけど。
狭い大学はどうなってんだ?
しかも50〜60の爺じゃん。プロジェクト的なことできんのか?
0784デフォルトの名無しさん
2012/08/31(金) 23:59:36.960785デフォルトの名無しさん
2012/09/01(土) 00:33:04.10キナ臭い洗脳と自己啓発紛いのアホな書籍で金を稼ぎ、
小学校時代からプログラミングを初めてredhatからスカウトされる
OSSのコミッタでも企業で大腸菌の研究をするのがIT業界だよ
多くのスーパーメディアクリエイターもIT業界には進みやしない
頭の良い奴らはジジイに使われて才能なんて生かせないと気付いている
0786デフォルトの名無しさん
2012/09/01(土) 01:08:52.84学生が半年で済むようなことを何年もかけてやってる教授も居るよ
学生のアイディアを片っ端から壺職人みたく破すだけの教授もね!
研究室の教授が何しているかは就活時にかなり重要だよ.
もっとも大学によっては既に研究室の選びようすらないけどね
そういうときは人生を諦めて一番楽に卒業できる研究室を選ぶと良いよ
意識の高い学生()は入学時から教授の品定めと専攻分野をさっさと決めとけ
0787デフォルトの名無しさん
2012/09/01(土) 01:36:22.62プログラムを書いたことのない教授がコンパイラの講義を教えていたり、
右とか左の学生がGCの名前すら知らなかったりとにかくカオスw
そして、連中をありがたく雇用する大企業(なぜか中小企業ほど人を選ぶ)
コミュ力だとw
0788デフォルトの名無しさん
2012/09/01(土) 02:35:27.42oreillyやspringerから金になるものだけ選んだ方が方がマシ
確率微分方程式が金になるよ。半年から二年ほど片手間に勉強すれば十分だ
どこかのアホ経営者が書いた本なんてのは読むだけ金と時間の無駄
0789デフォルトの名無しさん
2012/09/01(土) 03:48:54.86悪いことは言わないから関数型に全力を注いで金融関係のところ目指せ
0790デフォルトの名無しさん
2012/09/01(土) 05:15:54.05僕ちゃんはます、動的型付け言語が何かからお勉強しましょうねー。
0791デフォルトの名無しさん
2012/09/01(土) 05:53:36.82奴隷商乙w
最近の関数型はREPLが付いてるし動的言語なんて学んだらダメだよ
0792デフォルトの名無しさん
2012/09/01(土) 06:41:33.160793デフォルトの名無しさん
2012/09/01(土) 06:57:17.210794デフォルトの名無しさん
2012/09/01(土) 07:38:12.30そいつはただの奴隷だ
31 :デフォルトの名無しさん:2012/09/01(土) 04:11:42.21
関数型で金融系を目指すのが一番だって.それかRかmatlab弄って生産管理あたり
動的言語なんて触っていたら底辺コーダーのまま
アホ経営者に人生を使い潰されて終わちゃうよw
34 :デフォルトの名無しさん:2012/09/01(土) 04:13:59.82
>>31
発想が奴隷だな
かわいそうになってきた
35 :デフォルトの名無しさん:2012/09/01(土) 04:14:43.56
奴隷wwwwww
0795デフォルトの名無しさん
2012/09/01(土) 08:02:50.510796デフォルトの名無しさん
2012/09/01(土) 12:10:40.65ゴミゴミゴミゴミゴミwwwwwwwwwwww
うぇwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0797デフォルトの名無しさん
2012/09/01(土) 18:27:33.32世の中には、2chだからヤれることあるだろ
それを最近のバカ共はtwitterやfacebookでやらかすんだw
0798uy
2012/09/01(土) 19:38:52.710799デフォルトの名無しさん
2012/09/01(土) 19:49:36.880800デフォルトの名無しさん
2012/09/01(土) 19:49:51.05( ´∀`)< オマエモナー
( ) \_________
| | |
(__)_)
0801デフォルトの名無しさん
2012/09/01(土) 19:50:43.180802デフォルトの名無しさん
2012/09/02(日) 08:46:28.01なんかあんまり変わってないよーな
0803デフォルトの名無しさん
2012/09/02(日) 11:26:36.100804デフォルトの名無しさん
2012/09/02(日) 21:58:53.32関数型を使えるとか言ってる時点で現実を直視できないニートプログラマ。
0805デフォルトの名無しさん
2012/09/02(日) 22:13:30.99>>804
底辺土方乙
0806デフォルトの名無しさん
2012/09/02(日) 22:14:49.090807デフォルトの名無しさん
2012/09/02(日) 22:17:33.72javaやPHPがIT土方と言われる所以すら知らないで作業している底辺土方ってイメージw
0808デフォルトの名無しさん
2012/09/02(日) 22:19:04.330809デフォルトの名無しさん
2012/09/02(日) 22:22:21.120810デフォルトの名無しさん
2012/09/02(日) 22:23:44.05誰にでも出来ない言語があるとしたらそれは間違いなく糞言語
0811デフォルトの名無しさん
2012/09/02(日) 22:24:19.200812デフォルトの名無しさん
2012/09/02(日) 22:25:00.55誰にでもできる仕事だってことだよ
関数が重宝される理由ぐらい調べてみるといいよ
これから生きるには土方にも教養ぐらい必要だろうから
0813デフォルトの名無しさん
2012/09/02(日) 22:25:09.710814デフォルトの名無しさん
2012/09/02(日) 22:25:42.530815デフォルトの名無しさん
2012/09/02(日) 22:26:35.630816デフォルトの名無しさん
2012/09/02(日) 22:26:35.66なんで関数型言語でやらないの。それが糞言語だからでしょ。真っ先に重宝されてないじゃん。
0817デフォルトの名無しさん
2012/09/02(日) 22:29:17.88過去の名残りだってことぐらい分かれよw
大手も必要な処理は関数型プログラマを集めて活用してるもんだよ
0818デフォルトの名無しさん
2012/09/02(日) 22:30:36.35関数型プログラマを集めるってなんだよwポール・グレアムに毒されすぎだろw
0819デフォルトの名無しさん
2012/09/02(日) 22:32:12.13ちょっと検証すれば論外だって気づくわけ、まともな脳みそを持ってれば
0820デフォルトの名無しさん
2012/09/02(日) 22:33:04.08common lispが関数型だと思っている馬鹿がw
あれは、rubyと同じ動的言語だよ
0821デフォルトの名無しさん
2012/09/02(日) 22:35:25.05だから手続き型言語に持ってきて俗化した関数型言語の機能はみんな使うしそれで十分なわけ
というか関数型言語とかもはや存在価値ないよ
0822デフォルトの名無しさん
2012/09/02(日) 22:38:46.44結局設計。
0823デフォルトの名無しさん
2012/09/02(日) 22:43:41.14設計を失敗しないって、屏風の虎を出させるようなもんだろw
そうでなくとも文法と型推論だけでも恩恵あるでしょ
0824デフォルトの名無しさん
2012/09/02(日) 22:48:50.70その最強言語でキラーアプリを作った方がよろしいかと^^
0825デフォルトの名無しさん
2012/09/02(日) 22:51:37.35javaやPHPしか使えない奴らは、そもそも学習障害者しかいないから
さっさと障害者手帳でも貰ってIT業界から去れよw
0826デフォルトの名無しさん
2012/09/02(日) 22:54:56.16普及してる言語は情報もライブラリもアプリもコミュニティも拡大して差は広がるばかり
0827デフォルトの名無しさん
2012/09/02(日) 22:56:35.54デバックが必要な人が悪いってか?
0828デフォルトの名無しさん
2012/09/02(日) 22:56:51.820829デフォルトの名無しさん
2012/09/02(日) 22:57:56.18一部の重要な仕事をするのに動的言語やc++は明らかに向いていない
そして、動的言語とjavaには延々と馬鹿が募りぶくぶくと同じことを延々と繰り返す
これが土方や外食チェーン以外の何者なんだ?
0830デフォルトの名無しさん
2012/09/02(日) 22:59:13.440831デフォルトの名無しさん
2012/09/02(日) 23:00:05.720832デフォルトの名無しさん
2012/09/02(日) 23:00:37.910833デフォルトの名無しさん
2012/09/02(日) 23:01:31.070834デフォルトの名無しさん
2012/09/02(日) 23:01:58.490835デフォルトの名無しさん
2012/09/02(日) 23:04:15.580836デフォルトの名無しさん
2012/09/02(日) 23:06:23.460837デフォルトの名無しさん
2012/09/02(日) 23:08:53.81関数型はGCも必要だし型推論も必要だ
型推論がないと動的言語という別のジャンルになってしまう
だから関数型は普及しない
0838デフォルトの名無しさん
2012/09/02(日) 23:09:05.620839デフォルトの名無しさん
2012/09/02(日) 23:15:26.84そう思うなら、君がなれば?
0840デフォルトの名無しさん
2012/09/02(日) 23:20:40.56世の中には可逆的な反応と不可逆的な反応があるんだよ
そして、君は知ってしまった.今日から毎日が哀れなソクラテスだよw
0841デフォルトの名無しさん
2012/09/02(日) 23:23:03.57一人話を逸らそうとしてる意味不明なやつはいるけど
0842デフォルトの名無しさん
2012/09/02(日) 23:24:29.820843デフォルトの名無しさん
2012/09/02(日) 23:26:28.99ちょっと馬鹿にされると、「こいつは関数型言語の高尚さを分かってないなあ」みたいなウンコみたいな態度を取るだろ
分かってないのはお前だから。関数型言語でないと出来ない仕事なんてないし
情報も少なく、学習コストが高く、コミュニティも小規模で排他的な救いようのない言語をあえて使う必要性がまるでないわけ
「ドストエフスキー読んでます(ドヤ」みたいな趣味自慢のくせに、なぜか社会での有用性を主張し始めるからキチガイになる
そのくせなんの具体例も挙げない究極の馬鹿
0844デフォルトの名無しさん
2012/09/02(日) 23:28:05.78豚ってのは関数型コミュニティが作り上げたソフトウェアをググる知能もないらしいなw
うん、PHPとjavaは良い言語だ。毎日が幸せだ。よかったね!
0845デフォルトの名無しさん
2012/09/02(日) 23:30:22.56知らないんだよな?
どこかで見聞きした話をつなぎ合わせただけなんだろう
0846デフォルトの名無しさん
2012/09/02(日) 23:30:35.63豚豚と連呼することしか出来ないわな
というか、関数型言語全体よりJava一つの方が実績は大きいだろ
0847デフォルトの名無しさん
2012/09/02(日) 23:31:05.02どうせポール・グレアムの受け売りだろwww
0848デフォルトの名無しさん
2012/09/02(日) 23:32:24.56俺こそが最先端にいるんだ!
0849デフォルトの名無しさん
2012/09/02(日) 23:34:18.550850デフォルトの名無しさん
2012/09/02(日) 23:34:38.15Erlangみたいにオーソドックスな関数型言語でありながら
動的型付けってのは成立する
0851デフォルトの名無しさん
2012/09/02(日) 23:35:05.260852デフォルトの名無しさん
2012/09/02(日) 23:36:06.03LLにおける関数型プログラミング
http://toro.2ch.net/test/read.cgi/tech/1345123070/
0853デフォルトの名無しさん
2012/09/02(日) 23:36:31.770854デフォルトの名無しさん
2012/09/02(日) 23:50:28.140855デフォルトの名無しさん
2012/09/03(月) 00:07:43.140856デフォルトの名無しさん
2012/09/03(月) 00:18:03.67ErlangとかClojureって
パラダイムと直交するはずの並行処理を、関数型の特徴であるかのように見せているよね
0857デフォルトの名無しさん
2012/09/03(月) 00:33:56.11失敗でなくてしてないということ。
0858デフォルトの名無しさん
2012/09/03(月) 04:01:58.230859uy
2012/09/03(月) 06:26:47.99つまり関数型とはOOよりも出来ることを減らして少ない規則の中でプログラムを組むって事
バカには無理
バカじゃなくても無意味
0860デフォルトの名無しさん
2012/09/03(月) 06:32:40.470861デフォルトの名無しさん
2012/09/03(月) 07:21:34.83ドカタは手続き型しか使えない。選択してるわけじゃない。馬鹿なだけ。
0862デフォルトの名無しさん
2012/09/03(月) 07:45:09.03型レベルで保証するのがHaskellのメリットだけど、
普段から副作用をコード全体にまき散らしてる人には不便に思えるだろう
0863デフォルトの名無しさん
2012/09/03(月) 07:53:15.92ooは書けないんだw
0864デフォルトの名無しさん
2012/09/03(月) 07:57:29.11OOは手続き型や関数型とレイヤーが違う
関数型でOOできる
0865デフォルトの名無しさん
2012/09/03(月) 08:40:31.880866デフォルトの名無しさん
2012/09/03(月) 10:43:13.98使われているということと日本のプロジェクトで採用されているかは少し違う
0867デフォルトの名無しさん
2012/09/03(月) 11:19:08.830868デフォルトの名無しさん
2012/09/03(月) 11:27:02.38終わってんだよ、関数型言語は。
0869デフォルトの名無しさん
2012/09/03(月) 11:27:33.440870デフォルトの名無しさん
2012/09/03(月) 11:30:16.530871デフォルトの名無しさん
2012/09/03(月) 11:36:19.370872デフォルトの名無しさん
2012/09/03(月) 11:37:50.810873デフォルトの名無しさん
2012/09/03(月) 11:38:11.92アセンブラ以外で自由度を下げてない言語なんてあるの? 規約を設けることで保証をして品質を上げてるわけでしょ。
0874デフォルトの名無しさん
2012/09/03(月) 11:38:49.370875デフォルトの名無しさん
2012/09/03(月) 11:39:49.68ユーザビリティを考えて設計してるか、関数型の幻想に囚われて設計してるかの違いはある
0876デフォルトの名無しさん
2012/09/03(月) 11:41:11.08ユーザビリティって画面設計しかしないタイプか。
0877デフォルトの名無しさん
2012/09/03(月) 11:41:10.940878デフォルトの名無しさん
2012/09/03(月) 11:42:21.01副作用のある部分は単体テストしにくいから別にするだろう。
0879デフォルトの名無しさん
2012/09/03(月) 11:43:54.97???関数型言語が不便すぎるのは画面設計が失敗してるからなの?
0880デフォルトの名無しさん
2012/09/03(月) 11:53:35.670881デフォルトの名無しさん
2012/09/03(月) 11:57:47.14>>875に訊いてくれ。
0882デフォルトの名無しさん
2012/09/03(月) 12:02:49.51の理由を聞いてるんじゃないの?
0883デフォルトの名無しさん
2012/09/03(月) 12:18:39.450884デフォルトの名無しさん
2012/09/03(月) 12:24:36.40自分なりに要約して書いているだけだから、
虐めないで!
0885デフォルトの名無しさん
2012/09/03(月) 12:32:09.57>>876は質問じゃなく自己完結してるように見えるけど
0886デフォルトの名無しさん
2012/09/03(月) 12:58:10.70ttp://rikunabi-next.yahoo.co.jp/tech/docs/ct_s03600.jsp?p=002154&vos=dyterssc000000000000
0887デフォルトの名無しさん
2012/09/03(月) 12:59:02.230888デフォルトの名無しさん
2012/09/03(月) 13:05:58.852匹とも死ねとつねづね思ってるぞ俺は
0889デフォルトの名無しさん
2012/09/03(月) 13:33:26.470890デフォルトの名無しさん
2012/09/03(月) 17:41:59.85アハモジャの知人ってだけで、自称スーパーハカー()のワナビ臭がするw
大学教授が言うプログラムが、ほとんどhello wolrd止まりだしな
0891デフォルトの名無しさん
2012/09/03(月) 17:49:24.530892デフォルトの名無しさん
2012/09/03(月) 17:52:46.59プログラミングで10倍100倍あるいはそれ以上の差がつくのはサルでもわかるだろうに
0893デフォルトの名無しさん
2012/09/03(月) 18:11:09.14茂木の友達のこといってんだよw
0894デフォルトの名無しさん
2012/09/03(月) 18:16:15.370895デフォルトの名無しさん
2012/09/03(月) 18:25:20.430896デフォルトの名無しさん
2012/09/03(月) 18:31:39.670897デフォルトの名無しさん
2012/09/03(月) 18:38:19.550898デフォルトの名無しさん
2012/09/03(月) 19:30:27.100899デフォルトの名無しさん
2012/09/03(月) 21:04:31.93ほんとにLLとしてjs使ってる奴がいるのか甚だ疑問だ
0900デフォルトの名無しさん
2012/09/03(月) 21:11:15.55/ / / | ::/| :| `、`、 ヽ
/ / / | ::/ |::| `、',ヽ ', ', r┐ r┐ヾ>
,' i | :/' | | ::/ i:| ', i ヽ i ',. | | lニ コ
,' | ! :,' i|| ::/ || || `、 | | | | レ! _| |.
| | |`i'-,,, | | ::/ | | ', | | | ヽ/(___メ>
| | ||.| `二=,,__,,, ,,,__... -!´ト, | | ,、
. | . i | | //:::C, 7::c\ ||ヘ.| | ((
| .| | / {::::::::::::} {::::::::}`、 ,' .| i ))
| /´'| | ヽ::::::ノ ヾ::ノ .| | ((
| { | |:::::::: , .... | | ))
| \', '',''''' __ ::::::::: | i ((
| .:::', ', / ` ー --、 | | ))
/ .:::::::', :: ', / } / | ((
/ ...:::::::::::'、::. ',、( / ,イ|:: : | `
/ ..:::::::::::/'`、:::.. ',`'' - ,,____ノ,,ィ::´:::i ',:::|:: | / 7
`-ー-´/ /:::::::::/ `、、 ', /`、\:::::::::::::::,':::::::,' |::||:: | ┌‐' 'ー┐ト、
 ̄ ̄/ ./:::::,-{ \ `、、 / \::::::::,'::::::/ .|:i'|: | 7 /_7 / 」__〉
/ // \ \ ヽ/ }::::/:::::/ | |:| 〈_/ヽ_/
0901デフォルトの名無しさん
2012/09/03(月) 21:14:04.60・Gotoはどこへでも制御を移せて便利
・手続き型はどこでも副作用を書けて便利(NEW!!)
0902デフォルトの名無しさん
2012/09/03(月) 22:41:25.34動的に関数作り出したり
0903デフォルトの名無しさん
2012/09/03(月) 23:06:19.830904デフォルトの名無しさん
2012/09/03(月) 23:56:06.98そんなことはない
0905デフォルトの名無しさん
2012/09/04(火) 00:20:46.340906デフォルトの名無しさん
2012/09/04(火) 00:55:54.53原理的には大差ないバイナリを吐ける部分でも
最適化で負ける可能性はある
あとは勝手に遅延評価されてたとか、加算したいだけなのに
多倍長整数も考慮したジェネリックな+になってたとか、
リストの中身がボックス化されてたとか
0907デフォルトの名無しさん
2012/09/04(火) 02:09:26.37遅くなるでしょ?
高階関数とか
0908デフォルトの名無しさん
2012/09/04(火) 05:19:55.98どうやっても動的に処理を入れ替える関数は
バイナリにしたってインタプリタに近い
0909デフォルトの名無しさん
2012/09/04(火) 05:24:31.58ほとんどの場合は一度作ったら内部的に使いまわせるような気がするのだけれど
0910デフォルトの名無しさん
2012/09/04(火) 05:36:56.800911デフォルトの名無しさん
2012/09/04(火) 05:45:58.630912uy
2012/09/04(火) 06:10:45.02n = 2
def f n
if n == 2
p 3
else
p 4
end
end
f n
# ↓
r =
if n == 2
->{ p 3 }
else
->{ p 4 }
end
r.call
0913デフォルトの名無しさん
2012/09/04(火) 06:30:18.39それって結局処理内容そのものは固定じゃね?
内部的には静的と変わらないと思うのだけれど
(コテのも多分内部的には定数化されてんのじゃないのかね
Rubyの内部仕様は知らんが少なくともそうできる処理だ)
>>911
うーん…解くにしても
その式自体が欲しいなら動的関数というより数式処理の範疇だし
答えが欲しいなら固定でいいような気がすんだよな…
まあ、数式処理の過程で簡易的に使うのは楽かも知れん
0914デフォルトの名無しさん
2012/09/04(火) 06:53:11.330915デフォルトの名無しさん
2012/09/04(火) 07:29:08.16C++みたいに仮想関数じゃない場合は別として。
0916デフォルトの名無しさん
2012/09/04(火) 07:40:57.760917デフォルトの名無しさん
2012/09/04(火) 07:51:33.88実際のところ本当の意味で「動的にインスタンスを作り出す」のが最適(もしくは必須)な処理ってどういうのがあるの?
ほとんどの場合は一度作ったら内部的に使いまわせるような気がするのだけれど
wwwwwwww
0918デフォルトの名無しさん
2012/09/04(火) 08:00:09.60ほとんどは既存の関数を新規のスコープ(バインディング?コンテキスト?)と
結びつけて返すだけじゃね?
rubyのevalみたいなので実際に関数そのものを作り出す場合はちょっと別だけど
0919デフォルトの名無しさん
2012/09/04(火) 08:24:01.97ラムダとevalの区別がつかないww
0920デフォルトの名無しさん
2012/09/04(火) 08:59:15.26あったほうが良いってだけ
使えない奴は死ね
0921デフォルトの名無しさん
2012/09/04(火) 09:52:45.050922デフォルトの名無しさん
2012/09/04(火) 09:54:09.49Javaとかこのスレに何の関係もない勝ち組言語だってことを受け入れろ
0923デフォルトの名無しさん
2012/09/04(火) 10:05:30.78寿命がないものはクラスに入れて寿命があるものは変数に入れるようになったようだ。
寿命を持つラムダを認めると、クラスという入れ物の価値が下がってしまう。
0924uy
2012/09/04(火) 10:17:01.210925デフォルトの名無しさん
2012/09/04(火) 10:38:06.14そんな前提あったっけ?
例えばjavaだとnoclassgcを指定しないとクラスもGC対象だけど
0926デフォルトの名無しさん
2012/09/04(火) 11:19:13.98クラス自体を対象にするのではなくClass型のstatic変数を作って対象にすればいい
C++ならそうなるわな
0927uy
2012/09/04(火) 11:50:14.23ミックスイン主流になれば
次にクラスではミックスインの性能生かしきれないことに気づいて
そしてようやくラムダ主流になると思う
10年後くらい
0928デフォルトの名無しさん
2012/09/04(火) 21:50:43.50ミックスインでやるなよw
別のものだからな。
0929uy
2012/09/04(火) 22:53:48.60ああもういいや
0930uy
2012/09/04(火) 22:55:26.12「間違ったもの」としてこれから消滅していく概念が継承
異論は認めない
0931デフォルトの名無しさん
2012/09/04(火) 23:01:56.42「間違ったもの」としてこれから消滅していく概念がミックスイン
uyはトレイトをまだ知らない
0932デフォルトの名無しさん
2012/09/04(火) 23:05:28.08イラスト界隈を見ていると、
プログラミングの世界にあるオブジェクト指向(笑)よりも程度の低い
幼稚な一般常識が広まっている
上手い下手とかじゃない、無意味な誰得概念のオンパレード
アナログだからみな気づかない
この世界は幼稚すぎる、そう感じてしまう俺は生きる時代を間違えてる
世界はまだ成長できるよ
俺はこの時代に生まれ、このスペックを持った事は不幸かもしれない
世界の幼稚さに毎日呆れるばかりだ
0933uy
2012/09/04(火) 23:30:47.07周り下手すぎる
ふと見返せば周りの絵のどれと比べでも俺様のほうがうまくなってたわ
ほんと難易度の低いゲームだな
ちょっとシフトしただけでもう1位か
あっけなさすぎる
0934デフォルトの名無しさん
2012/09/04(火) 23:50:00.590935デフォルトの名無しさん
2012/09/05(水) 01:21:32.870936uy
2012/09/05(水) 06:02:43.68goto
DEFINEマクロ
スタティック変数
ユーザー定義のグローバル変数
素でポインタを触る行為
クラス
継承
JAVA
0937デフォルトの名無しさん
2012/09/05(水) 06:05:35.320938デフォルトの名無しさん
2012/09/05(水) 07:40:40.97・ポリモーフィズム:ダックタイピングできるなら不要
・実装の再利用:機能追加のために継承関係などというツリー構造を入れるのは
コードを密結合させる悪手
結論:LLに継承は不要
0939デフォルトの名無しさん
2012/09/05(水) 07:44:33.040940デフォルトの名無しさん
2012/09/05(水) 08:26:58.480941デフォルトの名無しさん
2012/09/05(水) 08:28:20.530942デフォルトの名無しさん
2012/09/05(水) 08:45:13.950943デフォルトの名無しさん
2012/09/05(水) 09:03:34.940944デフォルトの名無しさん
2012/09/05(水) 12:17:39.120945デフォルトの名無しさん
2012/09/05(水) 12:18:24.550946デフォルトの名無しさん
2012/09/05(水) 13:06:14.64ライブラリとして用意されているクラスを
使いづらくなる
0947デフォルトの名無しさん
2012/09/05(水) 13:40:16.33インスタンスっていうのは今でも使うのかい?
0948uy
2012/09/05(水) 15:29:07.55全てのオブジェクトのインスタンスのことであれば
俺様最高設計の中では、動的にインスタンスを一切生成しない構想もあったが
まだやってない
0949デフォルトの名無しさん
2012/09/05(水) 15:39:45.270950デフォルトの名無しさん
2012/09/05(水) 16:20:31.30クラス・継承が積極的に使われなくなったとすると、インスタンスは
どうですか、という質問は至極当たり前のものだろ。
実際には使われているらしいことはすぐ分かるが。
0951950
2012/09/05(水) 16:21:47.230952uy
2012/09/05(水) 18:26:42.850953デフォルトの名無しさん
2012/09/05(水) 20:42:41.02継承使ってるとか言ってる馬鹿はどうせ
コード上でバージョン管理やってるだけだろ
0954デフォルトの名無しさん
2012/09/05(水) 20:50:24.780955デフォルトの名無しさん
2012/09/05(水) 21:13:36.37そんな思いつきで大丈夫なの?
0956デフォルトの名無しさん
2012/09/05(水) 21:45:48.430957デフォルトの名無しさん
2012/09/05(水) 21:57:52.600958デフォルトの名無しさん
2012/09/05(水) 22:20:58.000959デフォルトの名無しさん
2012/09/05(水) 22:22:26.790960デフォルトの名無しさん
2012/09/05(水) 22:31:01.83ドカタ長くやってると読解力も衰えるのか?
0961デフォルトの名無しさん
2012/09/06(木) 00:22:06.94cmp,fn,gc,buf的なサフィックスでしょ
0962デフォルトの名無しさん
2012/09/06(木) 01:30:31.09と、隣のスモールトーカーが申しております。
ちなみにスカラのトレイトは名前だけで正体はただのミックスインなんだそうです。
0963デフォルトの名無しさん
2012/09/06(木) 07:07:49.63内部向けにはクラス図からコード生成するし、客向けにはjavadocで済ます。複雑なとこは別途なんきUMLで補足する。
Javaが一番楽だと思うけど。他の言語でもっと楽な方法あるの?
0964デフォルトの名無しさん
2012/09/06(木) 07:30:32.53RubyのmixinとSmalltalkのtraitsとScalaのtraitsとPerlのrolesの違いをくわしく
0965デフォルトの名無しさん
2012/09/06(木) 07:44:31.58trait: メソッド衝突検知機能付きコピペ
0966デフォルトの名無しさん
2012/09/06(木) 08:05:40.04同じ名前なのに言語によって仕様違うとか困るんだけど
0967デフォルトの名無しさん
2012/09/06(木) 08:41:23.98普通にコンパイルが通らないというのが正しい仕様だろう。
0968uy
2012/09/06(木) 09:03:19.49module B ; def ffff ; p 1 end end
class Module
def uy inc
self.included_modules.+([ self ]).map do | m |
b = inc.instance_methods.&(m.instance_methods)
return p("juuhuku_is_#{inc}_#{m}_#{b}") if b.empty?.!
end
self.class_eval { include inc }
end
end
class C
def ff ; end
uy A
uy B
end
module D
def ffff ; end
uy A
uy B
end
module B ; def ff ; p 1 end ; end
class E
uy A
uy B
end
重複チェックってたったこれだけだろ
何でMatzはこの程度も作れないの?初心者か
0969デフォルトの名無しさん
2012/09/06(木) 11:35:41.07http://engawa.2ch.net/test/read.cgi/poverty/1346894513/
0970デフォルトの名無しさん
2012/09/06(木) 13:31:01.14「Windows Server 2012」の新機能とは?
http://news.mynavi.jp/articles/2012/09/06/winsserver2012/
日本マイクロソフトは9月5日、新サーバOS「Windows Server 2012」の提供開始を発表したが、
同社はそれにともなう記者説明会を開催し、新機能の概要を説明した。
同社はWindows Server 2012を「New Cloud OS」と位置づけており、
0971デフォルトの名無しさん
2012/09/06(木) 16:49:45.33フラット化っていうくらいだからインクルード順に依存する実装じゃだめだろう。
あとモジュール変数の衝突とかどうするの? ステートレス・トレイトはもう古いよ?
0972uy
2012/09/06(木) 18:44:04.67モジュール変数って用語はrubyにない@@つきのクラス変数ってことなら参照可だろrubyは
重複チェックは余裕で実装可
0973デフォルトの名無しさん
2012/09/06(木) 20:00:46.33ヒント:教祖様はcプログラマ
0974uy
2012/09/06(木) 21:23:03.41そこで勘違いしたような気しかしない
0975デフォルトの名無しさん
2012/09/06(木) 22:01:35.110976uy
2012/09/06(木) 22:23:43.46つかインクルードした側の一覧がないか
だったらメソッドuy内でなんかの変数にでも追加して情報もたせりゃいいだけ
rubyソースコード内だけでトレイト実装するための条件はクリアされてる
0977デフォルトの名無しさん
2012/09/06(木) 22:34:30.95モジュールにメソッドを追加する手段なんて山程あるのに、
それに全部対処できるの?
0978uy
2012/09/06(木) 22:45:07.39最重要コードはあげたんだからあとは自分で考えれば
0979デフォルトの名無しさん
2012/09/06(木) 22:45:56.84モジュールが応じるメソッドを任意のタイミングで変化させてる場合なんてどうする?
0980デフォルトの名無しさん
2012/09/06(木) 22:47:04.990981デフォルトの名無しさん
2012/09/06(木) 23:05:26.03それがどんな影響を及ぼすかを考えるのが最重要なんですけどね
0982uy
2012/09/06(木) 23:09:51.40んでチェックしてエラーだす方法は提示したよね
これでわからないならもうあほだ
0983uy
2012/09/06(木) 23:14:53.01トレイトがないみたいな流れだからとりあえずの実装をしただけ
俺様的にエラーだしてプログラム停止ってrubyっぽくないと思うからトレイト入るとしても
他言語のトレイトにはならないだろと思う
0984デフォルトの名無しさん
2012/09/06(木) 23:15:42.94馬鹿には全部説明しないと理解できないのかな
おまえが提示した方法じゃrubyのメソッド重複チェックはできないと言ってるんだよ
0985uy
2012/09/06(木) 23:21:26.45ruby学んでください
0986デフォルトの名無しさん
2012/09/06(木) 23:22:31.22トレイトAとトレイトBで同じメソッドがあった時どうなるの?
ダイヤモンド継承で同じメソッドがあるときでもエラーにならずに
コンテキストに応じてトレイトAとトレイトBを見分けて、
適切なメソッドを仕組みを備えているのはVBだけなのかな?
0987デフォルトの名無しさん
2012/09/06(木) 23:24:48.600988デフォルトの名無しさん
2012/09/06(木) 23:25:14.71意味的にはmethod_missingは任意のメソッドと衝突してるから
method_missing実装してたら即エラーにすべきじゃない?
0989デフォルトの名無しさん
2012/09/06(木) 23:36:58.450990デフォルトの名無しさん
2012/09/06(木) 23:51:08.13何も書かなければ何も影響しないことを保証するのが先
0991デフォルトの名無しさん
2012/09/07(金) 00:18:48.58traitsがあってもRubyの1/10も普及しないということだ
0993デフォルトの名無しさん
2012/09/07(金) 06:44:14.38【Perl,Python,PHP】LL バトルロワイヤル 26【JS,Ruby】
http://toro.2ch.net/test/read.cgi/tech/1346967719/
0994デフォルトの名無しさん
2012/09/07(金) 08:58:02.41Smalltalkがゴミなのは異論ないけど
('70年代の「メッセージだけで言語とかつくれんじゃね?」的一発ネタを引っ張りすぎだろ…)、
そのゴミのゆうに百倍以上の人間がすでに関わっていながら、
そのゴミをアイデアや文化の源泉として未だ凌駕できないばかりか、
そのゴミから出てきたTraitsすらまともに実装できないRubyのゴミ以下の硬直っぷりを
なんとかしないといかんと思うわけだよ。
Rubyからもっと新しい開発手法や言語機能を創出しろよ。ゴミに笑われるぞ。
0995デフォルトの名無しさん
2012/09/07(金) 09:45:14.810996デフォルトの名無しさん
2012/09/07(金) 10:02:44.140997uy
2012/09/07(金) 10:14:10.47メソッドだろうとクラス変数だろうとuyメソッドと同じようにかけよバカ
rubyで重複チェックは作れた
そんなにトレイト欲しいなら処理系にトレイト実装されなくても重複チェック機構は作れる
自分でかけない奴が勝手に発狂してゴミ扱い
動的言語でよそにある概念引っ張ってこれないとか早々ないから
0998デフォルトの名無しさん
2012/09/07(金) 10:21:03.30Objective-Cみたいな中途半端の出来損ないがSmalltalkの後継とか笑える。
そもそも「実用化」ってなによ? Smalltalkエンプラで使われて久しいんだけど。
いまだに Smalltalk=アラン・ケイの暫定ダイナブック環境 とか勘違いしているとか?
0999デフォルトの名無しさん
2012/09/07(金) 10:23:45.571000デフォルトの名無しさん
2012/09/07(金) 10:24:31.32rubyでトレイトは実装可
バカには無理
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。