【Perl,PHP】LLバトルロワイヤル21【Ruby,Python】
最強のLL=軽量プログラム言語は、どれよ?
エントリーは、Perl、PHP、Python、Ruby、JavaScript・・・
さあ、死ぬまで語りやがれ!!!
■LLとは?
軽量プログラミング言語(Lightweight Language,LL)とは、取り回しに優れ、
コードの作成や修正が容易と見なされるプログラミング言語のことを指す。
ここでいう「軽さ」はプログラマの負担の軽重を指し、
実行速度に優れているという意味ではない。
現在の水準では
・インタプリタ
・動的型
・正規表現
・クロージャ
などを利用できるものがLLと呼ばれることが多い。(Wikipediaより)
前スレ
【Perl,PHP】LLバトルロワイヤル20【Ruby,Python】
http://toro.2ch.net/test/read.cgi/tech/1326341657/
原発事故への対応を見ても判る通り
国内の調査機関は全くあてにならない
How To Become A Hacker
http://cruel.org/freeware/hacker.html もしコンピュータ言語をなにも知らないなら、まず Python から始めることを
おすすめします。設計がきれいだし、ドキュメントもしっかりしているし、
初心者にもそこそことっつきやすくできています。でも入門言語として最適でも、
おもちゃではありません。強力で柔軟で、大きなプロジェクトにもじゅうぶん
対応しています。
Java もプログラミングを学ぶにはよい言語です。 Python よりはむずかしい
ですが、できるコードは Python より高速です。二番目の言語としてはとても
すぐれていると思います。
本気でプログラミングをするなら、C を勉強するしかありません。これはUnix の
中核となる言語です。C++ は C と密接な関係にあります。片方を知っていれば、
もう片方を学ぶのはそんなにむずかしくありません。が、どっちも真っ先に
勉強しようとするのには向いた代物ではありません。
オブジェクト指向を学ぶにはどの言語がよい?
http://capsctrl.que.jp/kdmsnr/wiki/bliki/?cmd=view&p=LanguageForLearningObjects&key=Java%2BPython%2BRuby (前略....)選択肢とは、RubyとPythonのことです。両言語とも、動的型言語です。
静的型言語と一緒に使えるようになってれば便利だと思います。どちらも大変便利な言語です。
ちょっとしたスクリプトで自動化して解決するような仕事はたくさんあります。
技術者たるもの、1つくらいはスクリプト言語を隠し持っているべきですね。
どちらの言語を選んでも構いません。個人的には、Rubyが気に入っていますけど。
広く使われている(かつ利用可能な)のはPythonですし、
Rubyはより純粋なオブジェクト指向ですので(学ぶのには最適です)
私にとってみれば、すがすがしい感じがします。 あと、
Rubyにはブロック(コード群を簡単にオブジェクトとして扱う機能)がありますね。
ブロックは強力なプログラミングツールで、コードの構造化についての多くの考え方を
学ぶことができます。他のやり方だと、なかなかこうはいきません。
関数型言語の入門用にも良いですね。
前スレのお題をコピペ
992 名前: デフォルトの名無しさん Mail: sage 投稿日: 2012/02/23(木) 18:17:51.40
>>981 ふーん。じゃあ関数型プログラミングのお題(コード例はHaskell)
t f = f . f
x = t t t t (+ 1) 0
高階関数を素直に書けるなら余裕でしょ
993 名前: デフォルトの名無しさん Mail: sage 投稿日: 2012/02/23(木) 18:41:46.47
>>992 Python
def t(f): return lambda x: f(f(x))
x = t(t)(t)(t)(lambda x: x + 1)(0)
994 名前: デフォルトの名無しさん Mail: sage 投稿日: 2012/02/23(木) 19:10:22.69
>>992 OCaml
let rec t f x = f (f x)
let x = t t t t ((+) 1) 0
>>7 Ruby
t = lambda { |f| lambda{|x| f.call(f.call(x)) } }
x = t.call(t).call(t).call(t).call(lambda { |x| x + 1 }).call 0
>>7 Standard ML
fun t f = fn x => f (f x)
val x = t t t t (fn x => x + 1) 0
対話環境での実行結果
- fun t f = fn x => f (f x);
> val rec t = (fn f => (fn x => (f (f x))))
- val x = t t t t (fn x => x + 1) 0;
> val x = 65536
はよwww結論はよwwww
根本的にどこがLLなのか分からない
このお題の奴って前スレでrubyは関数型プログラミングに向いてるとか
pythonに有利なことはしないとか言ってた奴だろ?
何がしたいの?
どう見てもrubyをdisりたい基地外がやってるだけだろwwwwwwwwww
>>10 (Ruby は Python よりも)関数型言語の入門用に良いですね。 -- by Martin Fowler (
>>5)
>>15 どこがいいの?ちゃんと説得力のあるお題出せよw
>>15 Ruby(
>>8)はcallが冗長な上に
メソッドは直接t.callの引数にできないからlambdaなどで包む必要がある
def add1(x) x + 1 end
x = t.call(t).call(t).call(t).call(lambda { |x| add1(x) }).call 0
こんなので関数型とかマゾすぎるわ
>>17 先生、質問があります!!
>>17のコードを実行したところ、Rubyから怒られました
undefined local variable or method `t' for main:Object (NameError)
何が悪かったのでしょうか?
あ
た
ま
>>18 エラーメッセージが読めるなら自明だろ?
あ、Ruby信者は英語が読めないんだったねwww
もう 2ch はひといない
x=(t=->f{->x{f[f[x]]}})[t][t][t][->x{x+1}][0]
p x
Rubyの効率がわからないバカは
一生効率の悪い言語を使っていればいいのに
変数に$のついてる言語や
末尾にデリミタのついてる言語でコンパイルエラーをだすのが大好きで
Ruby特有のmix-inの利点やRuby特有のイテレータの使い方すらわからないレベルならば
一生そこではいつくばって分厚いの隙間からわずかに見せる光を掴もうともがいていれば良い
「バカは効率を理解しない」
だからC言語が完成してからRubyが出来上がるまでここまでの年月がかかり、
Rubyですらこのレベルでとまっている
周りがいつまでたっても効率を理解せず、Rubyに協力しないでJAVA,PHPみたいなゴミカス言語ばかりを成長させるから
教えてくださいと乞えば教えてやる 学習意欲すらないゴミカスに明日はない
統計分析をクソ遅いLLでやる理由がない
つまりスレ違い
必要な所だけNumPyでもなんでも使えばいいだろ
Rもmatlabもインタプリタなんだから広義のLLに含まれるだろ
最尤ほげほげを求めるのに動的計画法なり再帰的な式が含まれるぞ
だいたい金融なんかはhaskell/ocamlなんかの関数型が使われてんだろ?
>>23 Rubyのパーサは複雑過ぎて意味分からん世界に突入してるな
->x,y{x+y}
->(x,y){x+y}
->x,y {x+y}
->(x,y) {x+y}
-> x,y{x+y}
-> (x,y){x+y} # これだけ syntax error
pythonで、どうやって職にありつくんだよwwwww
大学まで出て、python(キリッ)ruby(ドヤッ)なんてしてたらニート一直線だろ
いたのかuy
uyや、ちんこ(akira develop)とかいった糞コテではないが、
このスレをお気にいりに入れてたら気が付くと同じ運命を辿ってた
このスレにいる大学生たちに同じ運命(ニート)を辿る呪いをかけたお
末尾デリミタwとかいうバカがuy以外にいるのか?
末尾デリミタwに類似したボットならPerl忍者とかいう痛コテだな
ちんこ(akira develop)を知らないのは新参だって、ばっちゃが言ってた。
当時、ちんこに就職のアドバイスをしてたPGは、
cでコンパイラ/OSなりを書いといた方が採用時の受けが良いってレスしてたぞ。
俺からのアドバイス。現役の大学生は夢なんて見ずに公務員試験うけとけ。
ちんこ = akira develop = 神オブジェクト
35 :
8:2012/02/27(月) 14:08:56.34
>>23 >>23のカキコが原因で、いきなりスレ進行が止まってしまったように見えるのは気のせいだろうか....w
この
>>23のコードは、(Ruby 1.8向けに書かれた)
>>8をRuby 1.9の新しい記法へ書き換えたものだね
これなら
>>12,17のRuby批判は当てはまらず、見事な反論となっている
また、Ruby 1.9でも
>>8の(冗長だけど初心者には優しい)コードがそのまま動く事も利点(=後方互換性)
あえて
>>23を改善すると、 [a] (無理に)1行へまとめず、[b] (適度に)空白を入れ、[c] カリー化を使う
t = -> f, x { f[f[x]] }.curry
x = t[t][t][t][-> x { x + 1 }][0]
これとPythonコード(
>>7)とを比較してみれば、コードの簡潔さに何の遜色も無い事が分かる
=== 結論:今回の お題「関数の部分適用」について、PythonとRubyに決定的な差異は無い ===
明らかにrubyの方が劣っているが
->の右側に引数を書くのは何かの冗談なんだよね?
HaskellやMLと意味も無く違っててキモイ
40 :
8 :2012/02/28(火) 16:01:08.16
>>39 2点、反論する
まずHaskellやMLの中置演算子 -> は、型式の中だけで定義されている
つまり「値の式」と(「型の式」である)型式をごっちゃにした指摘
>>29 はトンチンカンと言える
実際、Standard MLの「値の式」では前置のラムダ構文 fn が使われるし、
Haskellにいたっては、¥記号(バックスラッシュ)というRubyと同様な記号が使われている
【Standard ML(SML/NJ)での実行例】
- (fn x => x + 1) : int -> int; (* コロンの左辺が「値の式」、右辺が型式 *)
> val it = fn : int -> int
次に、すでに
>>35で書いたけど、短縮記号の右矢印がキモイ(=不慣れなので読みづらい)のであれば、
Ruby 1.8 の(冗長だけど初心者には優しい)lambda記法を使う事もできる(要は、「慣れ」の問題)
t = lambda { |f, x| f[f[x]] }.curry
x = t[t][t][t][lambda { |x| x + 1 }][0]
結果としてRubyでは、
>>8,23,35 そして上記コードという、
プログラマの慣れ/熟練度/用途等に応じた4通りの表現の使い分けが可能になる
>>40 > まずHaskellやMLの中置演算子 -> は、型式の中だけで定義されている
> つまり「値の式」と(「型の式」である)型式をごっちゃにした指摘
>>29 はトンチンカンと言える
何言ってんだお前?アホなの?
Haskell のラムダ: \x -> x
OCaml のラムダ: fun x -> x
おまえらruby信者とpython信者の争いは、10年も前にperlが踏襲した道だ
こうした議論みてると演算子の優先順位とリテラルが
開発効率の邪魔をしているようにさえ思えてくるので、
さっさと人類は言語設計のほとぼりに冷めて、
schemeに統一されちまえとさえ思えてくる
てか、それ他の実装でも動くの?
lambdaだ、Yコンビネータだいうヤツらをプロジェクトに
寄せ付けないためだけであっても、tclを利用する十分な理由になる
Tcl8.5にあるapplyはlambdaみたいなもんだろ
Shemeよくわからんけど
ネットで調べながら書いてみた
(define (t f) (lambda (x) (f (f x))))
(((((t t) t) t) (lambda (x) (+ x 1))) 0)
Schemeのスペル間違えた
2→4→16→次は何?
であの数になるってやつだな
この前それがどう展開されていくか考えてた
Perl5ではこうだろうか?
$t = sub{my $f = shift; sub{my $x = shift; $f->($f->($x))}};
$t->($t)($t)($t)(sub{my $x = shift; $x + 1})(0);
$$$$$$$$$$$$$$$$$$$$$$$
例によってちょろっとネットでマニュアルとか調べただけで
Common Lisp版を書いてみた
あってるのだろうか?いちおう65536になるけど
なんかtが組み込みの真値らしいのでaで
(let ((a (lambda (f) (lambda (x) (funcall f (funcall f x))))))
(funcall (funcall (funcall (funcall (funcall a a) a) a) (lambda (x) (+ x 1))) 0))
対応括弧の表示をしてくれるエディタじゃないと大変なのが
よくわかった
letの代わりにlabelsを使ってみたけれど、あまり変わらなかった。
(labels ((a (f)
(lambda (x)
(funcall f (funcall f x)))))
(funcall (funcall (funcall (funcall (a #'a) #'a) #'a)
(lambda (x)
(+ x 1))) 0))
こういうときはSchemeとCommon Lispの関数・変数の名前空間の違いが強調されるなあ。
糞スレ
Luaで書いてみた
t = function(f) return function(x) return f(f(x)) end end
t(t)(t)(t)(function(x) return x+1 end)(0)
schemeが一番分かりやすい。rubyが一番糞。
いまだにこんな
>>28うんこパーサ使ってるRubyって...
pythonやrubyで書かれたソフトウェアって、
実装のバージョンが上がって互換性が取れないときにどう対処してんだろう
バージョン毎に書き直す
Javaだってバージョン上がって動かなくなったりするわけで。
なんにせよ、大抵は一部分書き直すだけで対応は終わる。
バージョンアップしない
Redmineのバージョン Ruby Rails Rack
1.3.x ruby 1.8.6, 1.8.7 Rails 2.3.14 Rack 1.1.1
1.2.x ruby 1.8.6, 1.8.7 Rails 2.3.11 Rack 1.1.1
1.1.x ruby 1.8.6, 1.8.7 Rails 2.3.5 Rack 1.0.1
1.0.x ruby 1.8.6, 1.8.7 Rails 2.3.5 Rack 1.0.1
0.9.x ruby 1.8.6, 1.8.7 Rails 2.3.5 Rack 1.0.1
0.8.x ruby 1.8.6, 1.8.7 Rails 2.1.2
なんだよ、このパズルゲームみたいな。しかも、↓。
注意:
Ruby 1.9には対応していません。
Railsのインストール時にRackは勝手に入るし、違うバージョンのRailsで動かそうとするとエラーになり要求するバージョンが表示されるので、そんなに困ることはないよ。
新しいサーバに、これまで使ってた古いRedmineを移そうとしたら困るね。
>>69 どう困るの?インストールし直すだけで済むように思うんだけど。
すまないんだけど
72 :
デフォルトの名無しさん:2012/03/08(木) 22:57:56.72
新しいサーバーのRubyが新しいバーションだったら、ダメじゃん。
つーか、いまだに1.9不可とか。
PerlやPHPなら10年前のプログラムでも余裕で動くのに。
Rubyはオモチャだな。
オモチャですらないぞ
ただの汚物
性玩具
>>72 >新しいサーバーのRubyが新しいバーションだったら、ダメじゃん。
Redmineを動かすのが目的なら、Ruby1.8を追加インストールすればいいだけの話
>つーか、いまだに1.9不可とか。
>PerlやPHPなら10年前のプログラムでも余裕で動くのに。
PerlやPHPで書かれたRedmine相当のBTSには何があるの?
何を優先するかは新しいサーバにする理由が何かによるから、なんとも言えない。
もちろん特定のバージョン依存になっていなければ、それに越したことはない。
>75
同意
bugzilaってperlで書かれてんじゃねーの?
最終的に、スクリプト言語の記法どんなふうに収束するのかね
「僕の考えた最強リテラル集」がオライリーから出てもいいのにな
収束?拡散でしょこの先も
別のバージョンのRubyをインストールするのが難しい。
Rubyはバージョン間の互換性が低いから、rvmだとかでOS標準のRubyとは分けてアプリケーション毎にRuby実行環境を用意しないと行けない。それがまったくイケてない。
metasploitのコード眺めてたらwww
# # => { "user": {"id": 1, "name": "Konata Izumi", "age": 16,
# "created_at": "2006/08/01", "awesome": true} }
実用期を迎えた関数プログラミング 参加レポート
ttp://sea.jp/?p=937 > つまり、関数プログラミングを快適に実践するには、関数を変数に格納できるという程度では不十分だということです。
> 関数プログラミングを支援する言語機能として、以下のようなものが紹介されました。
>
> ・関数を変数に格納でき、さらに無名でも定義できること
> ・関数内部が静的なスコープを持つこと
> ・関数の引数の一部だけを変数にバインドした別関数を返す部分適用を簡単に利n用できること
> ・変数は上書きしない。配列、リストの中身も書き換えない
>
> これらの機能は、関数を頻繁に定義し、それをいろいろな場所に渡して使用する以上ないと困るし、
> 変数が上書きされたり副作用があると関数を組み合わせて使用することが難しくなるのだろう、と私は理解しました。
>
> 個々の要素、例えば高階関数や部分適用などのみに注目して他言語、JavaScriptやRubyなどを見ていけば、
> これらの機能を備えた命令型言語はたくさんあると思います。
>
> 実際、関数を使ったプログラミングもできると思うのですが、やはり型や変数の取り扱い、
> 副作用をどのように扱うか、スコープや値の評価方法など、関数型言語としてデザインされた言語でなければ、
> 関数プログラマーの方々がおっしゃるレベルの関数プログラミングは実現できないのだろうと感じました。
>>80 > 別のバージョンのRubyをインストールするのが難しい。
え、Redmineをインストールしようとしている人間が、Rubyのインストールもできないの?
LinuxやMacなら、ソースをダウンロードして
./configure --prefix=$HOME/ruby
make
make install
export PATH=$HOME/ruby/bin:$PATH
でいいじゃん。
どこで難しいと感じたのか、教えてほしいな。
依存関係にあるウェブサーバソフトもインストールしないと行けないよね。ドメインがないなら、別ポートにしないと行けない。そしたら、ファイヤウォールソフトの設定も変更することになるかな。
PerlやPHPなら最新のバイナリで古いプログラムも簡単に動くのに。
PATHを書き換えたら、古いRubyが優先されるから、専用の実行ユーザを作った方が良い。
rvmがある?rvmはオワコンで、今はrbenvが熱いらしいね。
Ruby戦士は常に戦う必要がある。
>>84 >依存関係にあるウェブサーバソフトもインストールしないと行けないよね。
どのことを言っているの?"依存関係にあるウェブサーバソフト"って具体的に何を指してる?
> ドメインがないなら、別ポートにしないと行けない。そしたら、ファイヤウォールソフトの設定も変更することになるかな。
そんなことしなくても、たとえばApacheならmod_proxy使えばいいよ。
今、apache+mod_proxy+unicornでRedmineインストールしたけど、ノートトラブルだったから、何を問題にしているのかわからない。
>PerlやPHPなら最新のバイナリで古いプログラムも簡単に動くのに。
Perlは使ってないから知らないけど、PHPはそんなことないでしょ。
バージョンを0.0.1上げただけでも動かなくなることが多いと批判されているのに。
あとZopeやDjangoも最新のバイナリでは動かないよ。
>>85 >PATHを書き換えたら、古いRubyが優先されるから、専用の実行ユーザを作った方が良い。
まるで作ってないなあ。そんなことしなくても済むように、環境変数があるんだと思うけど。
>>86 >ノートトラブル
ノートラブルの間違いでした。No troubleね。
なんでRedmineのインストールがそんなに難しいと言い張るのかわからなかったけど、
>>72 > 新しいサーバーのRubyが新しいバーションだったら、ダメじゃん。
> つーか、いまだに1.9不可とか。
> PerlやPHPなら10年前のプログラムでも余裕で動くのに。
> Rubyはオモチャだな。
>>73 > オモチャですらないぞ
> ただの汚物
>> 80
> 別のバージョンのRubyをインストールするのが難しい。
> Rubyはバージョン間の互換性が低いから、rvmだとかでOS標準のRubyとは分けてアプリケーション毎にRuby実行環境を用意しないと行けない。それがまったくイケてない。
これらを見る限り、単にRubyが嫌いだから文句つけてるだけじゃないか。
>>85 > Ruby戦士は常に戦う必要がある。
そうだな、こういうクレーマーとは戦う必要あるな。ほんとそう思った。
ところで
>>80 >別のバージョンのRubyをインストールするのが難しい。
これはウソというのはわかったのかな。
rvmを使ってもいいし、使わなくてもunix系なら
./configure --prefix=$HOME/ruby
make
make install
でいける。
#「別のバージョンのRubyをインストールするのが難しい」とのことだから、
#ほかのバージョンのRubyはすでにインストールされているという前提でいいんだよね。
それから
>>84 > 依存関係にあるウェブサーバソフトもインストールしないと行けないよね。
は具体名を教えてほしいな。インストールが難しいウェブサーバって何だろう。
まさか別のライブラリをインストールすること自体を問題にしているわけじゃないよね?
じゃないとRedmineをインストールすること自体だめじゃん。
>>75 Flyspray
rubyって、デフォでlinuxのディストリに入ってなくね?
debianのパッケージポリシーのドキュメントを眺めてたら、
PHP,perl,python,CLI、そして,adaまであったが、
rubyは見当たらなかったぞ
Rubyって、本体やらライブラリのバージョン管理やら自ら苦労を買って出て使うものだからね。標準で入るディストリなんてないんじゃないの。
ちなみにPHPは5.4でregister_globalsが削除されたくらいで、PHP4以降、10年以上に渡って非常に高い互換性を維持してる。
とっくの昔に開発停止してるPukiwikiのようなアプリでもそのまま動く。
Rubyが標準で使える状態なのってMacくらいじゃね
PHPは4.1で$_SESSIONが導入されて以降のプログラムなら、最新の5.4でもほとんどそのまま動く。
主要な機能で互換性がなくなったのは、5.4のregister_globalsぐらいなもの。
セキュリティホールの元が「主要な機能」ってところがPHPクオリティだとなぜ気付かない。
勝ち負けを口にする奴って何がしたいんだろう。
少なくとも自分がバカだということを表明したい、ということだけは確かだがw
そのとおりだね
Redmineのインストールを苦労と感じるほどRubyスキルが低いのなら、
>>78が紹介したBugzilaでも他のPHP製BTSでも使えば何の苦労も無いはず
無理してRubyを使う必要は無い
ちょっとぐぐっただけでも、PHPの非互換性はいろいろあるようだね。
【PHP5.4のhtmlspecialcharsに非互換問題】
ttp://blog.tokumaru.org/2011/11/php54htmlspecialchars.html > PHP5.4.0から、htmlspecialchars関数のデフォルト文字エンコーディングがISO-8859-1(Latin-1)からUTF-8に変更されます。
> これに伴い、従来動いていたアプリケーションが動かなくなるケースが出てきます。
> 典型的には、以下の両方の条件に該当するアプリケーションは、マルチバイト文字が表示されなくなります。
> ・内部文字エンコーディングとしてEUC-JPまたはShift_JISを用いている
> ・htmlspecialcharsの第3引数を指定していない
【PHP 5.2.1のPerl互換正規表現関数の非互換性?】
ttp://blog.ishinao.net/2007/03/09/72/ > ...というコードをPHP 4.4.1/4.3.11/5.1.4で実行すると、preg_matchが1を返した。
> でも、PHP 5.2.1(複数環境)で実行したところ0を返した。
>
> 上記正規表現は、Zend_Uri_Httpの中でpath要素のバリデーションに使われているもの。
> この動作のせいで、1470.netに登録できないURIが発生しているというところまでは追いかけたんだけど、ここで追跡頓挫中。
【parse_ini_fileの非互換っぷりがひどい】
ttp://project-p.jp/halt/?p=823 > yandoさんがparse_ini_fileの戻り値が面妖な件というエントリでPHP4とPHP5では
> ・戻り値が違う
> ・safe_modeの影響を受ける場合と受けない場合がある
> という感じの話が出ていますが,parse_ini_fileにはbobchinさんが[PHP]parse_ini_fileというエントリを書いていて,
> ・キーに[]を使うと挙動が違う
> なんて話もあります.
派手に互換性ぶっ壊しといてこんなによくなったとかドヤ顔してる言語は総じて糞
PHPを使っている人は分かるはずだけど
互換性を気にするようなコードなんてほとんど書かないよ
今最新のLLって何ですか。
スレタイに入ってる言語って全部10年以上前に開発されたやつですよね。
開発された当時からは別言語になってるよ
>>107の2010年は、まちがい
2011年10月10日〜12日に開催された デンマークのオーフスで開催された「GOTOカンファレンス」[2]で公開
Dart -Wikipedia
dartもPHPも、perl的なスクリプトっぽさがないよね
味気ないというか、普通にコンパイルするjavaやc++と同系統の言語で
粗野な言い回しのできない清楚なお嬢様育ち。
C++が清楚なお嬢様育ちというのは納得がいかない
どっちかと言うと提督とか戦国武将なイメージ
PHPはビッチだろ。
PHS をピッチ、と呼ぶ通称を知っていて、PHS という名前になる前は Personal Handy Phone で PHP だった、
なんてことを知ってる奴がどれだけいるんだよw
PHP is not Handy Phone.
115 :
デフォルトの名無しさん:2012/03/11(日) 13:09:16.25
事実を述べられたら「切れるなよw」って、
蛆がわいてますかw
「Rubyスキル」というキモいフレーズが
自然に出てくるところがキモい
Ruby使う香具師って、ギークきどりのいけすかないキモヲタが多いイメージ。
はてなとかやってそう。
自称ギークやブロガーはそれなりに多いかもね
ruby,pythonで募集するだけでも、
求人募集から多くの初心者をふるいに掛けることができるはず
そういう寒いこと言うのやめて
スラドにゃ、haskell募集しといて実際のコードベースはperlだっての見たぞ
123 :
デフォルトの名無しさん:2012/03/12(月) 11:26:06.13
PHP5向けに書かれたプログラムがPHP4で動かないのは当たり前じゃん。Ruby使ってる人ってアホなの?
互換性のみを考慮するのであれば、cとschemeで書けってな極論が出るわけだが、
しかし、言語やライブラリによる下層の揺らぎこそがコミュニティの存続と多様性を担っていると思うぞ
CはCでポータビリティのためにauto****に悩まされるしなあ。
しかし、PHPは後方互換性の高さを売りにしてたんだっけか?
勝負のしどころを間違ってないかね。
****confが無かったら余計大変だとおもうが
130 :
デフォルトの名無しさん:2012/03/15(木) 00:52:40.34
>これはPHP5での後方互換性の欠落をアプリであるPukiWiki側が(苦労して)補ったからじゃねえの?
PHP5の新機能を使いまくったからじゃね?
RubyアンチなPHPer (あるいはそれを装ったPython信者) のFUDに対応しておこう。
>> 80
> 別のバージョンのRubyをインストールするのが難しい。
UNIXやMacOS Xなら、そんなことはまったくありません (Windowsは使ってないのでノーコメント)。
rvmやrbenvを使う方法でもいいですし、それでなくてもソースコードをダウンロードして
tar xf ruby-X.X.X.tar.gz
cd ruby-X.X.X
./configure --prefix=$HOME/ruby
make
make install
でインストールできます。なおこの方法はUNIXにおいて非常にメジャーな方法であり、Ruby特有ではありません。
コンパイル時にapxsを指定するPHPのほうが特殊といっていいでしょう。
>>84 > 依存関係にあるウェブサーバソフトもインストールしないと行けないよね。
そうです。「依存関係にあるウェブサーバソフト」が何を指しているか不明ですが、
unicornやmongrelであればgem install unicorn や gem install mongrel だけで
簡単にインストールできるので、「依存関係にあるウェブサーバソフトもインストール
しないと行けない」ことが問題になることはないでしょう。
> ドメインがないなら、別ポートにしないと行けない。そしたら、ファイヤウォールソフトの設定も変更することになるかな。
別ポートにする必要はありません。Apacheならmod_proxy_balancerを、またnginxなら
upstream moduleを使うことで、Apacheやnginxが受け取ったリクエストを、別プロセスで
動いているunicornなどにまわすことが簡単にできます。
そうすれば、別ポートを開けるためにファイヤーウォールの設定を変える必要はまったくありません。
というか、そうするのが一般的であり、unicorn自体に外部からブラウザで直接アクセス
するような運用は通常はしません。PHPしか知らない人が、勘違いしているだけでしょう。
>UNIXやMacOS Xなら、そんなことはまったくありません (Windowsは使ってないのでノーコメント)。
Windowsじゃ難しいのか。
Ruby終わったな。
バージョンの互換性うんぬん以前に
WindowsではRubyは使いづらい
作ってる連中がやる気無いからね
そんなことTwitterでいうとFUD乙といわれるこんな世の中なんだぜ
135 :
デフォルトの名無しさん:2012/03/17(土) 22:38:34.38
cygwinで同じように入るよ
2008年にリリースされた1.8.7版は当時としてもクズであり、詐欺寸前のJavaからの移行などを
謳い文句に多数の方を阿鼻叫喚の地獄へ叩き落しました。心より情弱乙と申し上げます。
当然、今後も使う奴は真性のバカであります。開発者は1.8に完全に飽きました。
これからは1.9使うよな当然。
自分で直せ/作れって風潮じゃなかったか?
>>135 いま、RubyのCygwin版てメンテナいるの?
数年前に募集してたけど
>>138 なんてハードで敷居の高いLLなんだ…!
直せばできるもん!
OSSはそういうもんだろ。
直さなくても最初から快調に動くPythonなりPerlなりPHPは素晴らしいな
RubyをWindowsで使うなら、JRubyがおすすめ。
うそみたいによくうごく。
ところで地獄に1つだけ持っていくとしたら、どの言語だ?
候補としては、nmapやwikiなり、組み込まれる可能性が高いluaか
railsと、その周辺のアプリが動いてくれるrubyで迷うんだがな
146 :
デフォルトの名無しさん:2012/03/20(火) 03:46:52.57
Ruby消えても全く困らないから地獄に持っていっていいよ
俺はPerlかな
素のコマンドプロンプト…という実在の地獄で
実際に救われた経験がある
同じ理由でRubyでもいい
言い方が悪かった。戦場を生き抜くために持っていくにはだ
戦場ってのは人それぞれだからなあ…
150 :
デフォルトの名無しさん:2012/03/20(火) 07:12:14.52
Monoプロジェクトのためのウィキじゃねぇかよ
他の言語についてあれこれ書くのは目的外使用じゃねぇかカス
152 :
デフォルトの名無しさん:2012/03/22(木) 07:58:50.98
>>131 大量にミドルウェアやライブラリの名前が出てくるけど、そんな面倒なこと喜んでするのはRubyユーザーだけ
153 :
デフォルトの名無しさん:2012/03/22(木) 08:05:59.80
>>126 8年前のPukiwikiがまだ動いてるわけだけど?
Rubyユーザーは8年前何してた?
154 :
デフォルトの名無しさん:2012/03/22(木) 08:10:46.98
>>123 PHP4時代に書かれたプログラムがPHP5でも動くっていうのと、PHP5向けに書かれたプログラムがPHP4じゃ動かないっていうのはまったく別の話だと思うが?
155 :
デフォルトの名無しさん:2012/03/22(木) 08:15:17.74
>>128 MTが落ちぶれて、WORDPRESSがCMSを独占するようになったのはどんな環境でも動く互換性の高さも理由の一つ
とっくにセキュリテイフィックスすらされなくなったPHP4も、Wordpressはずっとサポートし続けた
156 :
デフォルトの名無しさん:2012/03/22(木) 08:25:15.73
RedmineってRubyで一番有名なアプリでしょ
それがRuby1.9出て4年も5年も経って未だに対応してないって、RubyやRailsの互換性がどうしようもなくダメで、対応しようにもそこまで手が回らないわけじゃん
157 :
デフォルトの名無しさん:2012/03/22(木) 21:59:10.25
EC-CUBEなんて今でもPHP4.3に対応してる。PHP4.3ってリリースしたの10年前。
なんでPHP4.3に対応してるかって、まずどんなレンタルサーバでも置くだけで簡単に動かせる。
シェルが使えないレンタルサーバ、シェル操作ができないサイト運営者って世の中にたくさんある。だから
>>131なんて論外なんだわ。
それに、EC-CUBEをカスタマイズして納品したとする。セキュリティホールが見つかってレンサバのPHPがバージョンアップしたとして、動かなくなった、瑕疵担保期間だから補償しろって。
そんな事やってられない。
RubyやRailsのバージョン0.01上がる度にプログラム書き直すのがコストじゃないなら、そりゃPHPよりRubyの方がいいと思う。
Rubyはクールだからな。
>>156 Rubyで一番有名なアプリはRuby自身だと思う
言語であると共にツールでもあるのがRubyだもの
それは他の言語については言えないことなの?
Cで一番有名なアプリはGCC?
LispはCとLispで作られていると言われているけれど、
Rubyも同じようなものと言えるのか。
処理系に付いてくるライブラリがRubyで書かれているだけ?
>>160 んーと、何て言えばいいんだろ
別にRubyがRubyで作られてるワケじゃなくて
例えばワンライナーのRubyはもはやツールだよということ
>>157 古い処理系で書けば良いだけの話
ソフトウェアサイクルがあるんだから、そのうち全部をリプレースするだろ
>>155 いまのWordpressはPHP5.2.4以降が必要だよ。PHP4は切り捨てられているし、使うべきじゃない。ましてや自慢するようなことじゃない。
>>154 PHP4時代に書かれた「すべての」コードがPHP5でも動くという意味なら、それはない。
マイナーバージョンが上がっただけで動かなくなることで有名なPHPに、そんなことを期待してはいけない。
ただしくは、「注意して書けばPHP4とPHP5の両方で動くコードを書くことができる」というだけ。
そしてこれは「注意して書けばRuby1.8と1.9の両方で動くコードを書くことができる」
あるいは「注意して書けばPython2と3の両方で動くコードを書くことができる」というのと同じ。
PHPの下位互換性が高いと主張している人がいるけど、ろくにPHPを使いこなせてないのだろう。だから問題が出にくい範囲の機能しか使ってないだけ。
PHPを仕事で使っているなら、PHPの互換性が高いなんて、そんなことあるはずがないと知っているだろうに。
>>157 >RubyやRailsのバージョン0.01上がる度にプログラム書き直すのがコストじゃないなら、そりゃPHPよりRubyの方がいいと思う。
RubyやRailsのバージョンが0.01上がるだけで動かなくなった例を教えて。
166 :
デフォルトの名無しさん:2012/03/23(金) 08:45:43.82
それは今どきPHP4のレンタルサーバーなんて探してもまず見つからないだろうからな。
けど、WordPressがPHP4を切ったのはつい去年のことだよ。
それまでずっとサポートしてた。
PHP4と5だと、例外が使えるかどうかというのが大きいけど、例外を使わなければPHP4と5でコードを共有するのは大して難しくない。
そういえばWordPressのサイト全然見当たらないな
というか、"バージョン番号"そのものには全く固定の意味はないからな
「バージョン番号がたった1上がっただけなのに動かない!」ともし本気で言っているのなら、
その人はざんねんながらプログラミングにもソフトウェア使用にも向いていない
仮想敵にするのにも仮想被害者にするのにも向いてないよな
仮想被害者というのはいい言葉だと思う
なんでLL言語なんて使ってるの?
パフォーマンスの問題にぶつかったことある人たくさんいるでしょ
なんでわざわざ遅い言語使うの?
176 :
デフォルトの名無しさん:2012/03/23(金) 20:45:34.20
>>157 >>67 注意:
Ruby 1.9には対応していません。 上記の表に示したバージョンのRuby 1.8.xをインストールしてください。
RubyGems 1.3.7以上が必要です。
Rails 2.3.5(Redmine 0.9?1.1で必要)はRubyGems 1.5.0以降がインストールされていると利用できません。それより古いバージョンのRubyGemsを使用してください。
Rails 2.3.11(Redmine 1.2で必要)はRubyGems 1.7.0以降がインストールされていると利用できません。それより古いバージョンのRubyGemsを使用してください。
Rake 0.8.7以上が必要です(ただしrake 0.9.xはRailsが対応していません)。
Rack 1.1.xが必要ですが、1.1.0は #8416 で報告されたバグがあります。他のバージョンではデータベースマイグレーションが失敗します。
Mongrel 1.1.5 needs a patch attached to #7688 to work fine with Rails 2.3.11. In case of upgrade, another issue may appear for some time after migration (#7857).
Redmine 1.0.5以降ではI18n 0.4.2が必要です。
Rails 2.3.14 is a minor security release known to work fine with Redmine 1.2.x series (except for previous point) and can be used as a replacement for 2.3.11 (read config/environment.rb first).
前から使っていて各ライブラリを細かくアップデートするのではなく、
新しくインストールする場合はそんなに引っかからない。
RubyGemsのバージョンアップが一時期異様に早かったので、
そこに気をつけていれば後は gem install rails -v 2.3.14 すればいいだけ。
というか、自動インストールスクリプトがやってる条件判断を文章で書いてるだけだな
なんでそんなことしてるかというと、自動アップデートとかやられると困る人がいるからだ
手動でやらないといけない人向けに、文章で書いてある
使ってればわかることなんだが、使ってないからわかんないんだろうな
RubyがゴミなのかRedmineがゴミなのか。あるいは両方ゴミか。
>>178 に書いてあることを全く理解できないおまえの頭がゴミ
>>178 > 使ってればわかることなんだが、使ってないからわかんないんだろうな
あ、この人プログラミングぜんぜんできないんで
単語でぐぐって出ないことは答えられないし
気のせいかもしれんけど、
>>67からいきなりスレのレベルが低下したような....
これも春休みだからなのかな?
183 :
デフォルトの名無しさん:2012/03/25(日) 04:56:14.81
rubyが糞なのはわざわざ自己紹介しなくてもわかってんだよ
自己紹介はintro板でやれ
その書き込み自身が「おれは糞だ」という自己紹介なんだからintro板でやれ
>>183
>>181 具体性のあることはなんもないよね
言語特性やプログラミングそのものに関することはなにも話せない
言葉尻つかまえるか他サイトをコピペするだけ
>>165 >RubyやRailsのバージョンが0.01上がるだけで動かなくなった例を教えて。
>>176
馬鹿には無理
馬鹿が言うと説得力あるな。もう何年も言い続けてると特に。
「JavaSE7の日本語ドキュメントまだー?」
「えっ、Javaのマニュアルって英語しかないの?」
「日本語の資料が充実しているPHPを採用してはどうでしょう」
PHPのマニュアルだって、きちんと確認したい時には、付属してるディスカッションを
読まないといけないから、結局英語だよな。
xdebugで出力されたログをWinCacheGrindで見てるのですが、検索機能がしょぼくて使えません。
もっと良いログビューワありませんでしょうか?
apache環境があるのでWebアプリでも良いです。
つ cat
195 :
uy:2012/03/30(金) 23:51:24.35
春休みになるとPHP使う奴が多くなるのか
まぁ最近おもったけど
プログラムの言語の宗教戦争に巻き込まれて
貴重な時間をつぶすようなレベルのバカは、
良い師に出会って学んでいれば優秀なPGになれたとしても、
自力で登って来れない奴は所詮そこまでということだろう
言語選択を見誤ったことによって、年単位の時間をつぶしているうちに
若い奴が、知識のある奴にほんの少し教わるだけで一気に追い抜いていく
そんな思いをしたくなければ、まず強くなることだ
どの言語がいいか?とか、何をすればいいか?はあえていわない
しかしPHPだけは違う
PHP使っている情弱は弱いから、右往左往して年単位の時間をつぶしていく・・・
まぁ効率を求めることだけが人生じゃないし、
それもまた良き人生哉
uy === QZ説
>>191 なぜErlangがあってPrologがないのだろう。
文法に面影があるという程度であって
パラダイムは異なるからじゃないの
200 :
営利利用に関するLR審議中@詳細は自治スレへ:2012/04/01(日) 08:32:25.00
RubyさんがNHK進出。大勝利ですね。
>>191 英語読めない情弱日本人とは全く異なる結果だな
Python最強すぎワロタwww
見た目に騙される情弱日本人の
>>201 にワロタwww
>>197 英語圏というより米国だが、ロジックというのはビジネスと結びついていて、
Hacker的興味とは無縁らしい。逆にロジックとして求人が結構あったりする。
ここらあたりは、日本の感覚ではさっぱりわからない。
それは微妙だな。
BASICみたいな構造もへったくれもないような「言語」しか知らないと、
あの括弧のカタマリとか見ただけで「あーなんだこれわかんない」になっちゃう。
少なくとも昔の俺はそうだった。
日本のビジネス誌でも有難がってるだろ
ケーブルテレビで"Law and Order"っていう番組をよく観る。
ああいう取引社会はうんざりだが、ロジックの需要が強いことは
よくわかる。
>>206 その"ロジック"とPrologのロジックプログラミングとどのくらい
重なるものなのか、だね。
日本で言ってるいわゆる「ビジネスロジック」って、向こうで英語でlogicと言ってるのか?そもそも。
>>208 amazon.com で"Business Logic"を検索すると7887件もヒットする。
ずっと広い概念として使われているに違いない。
工学部の基礎研究から金融やシンクタンクに就職したりすることを言ってるんじゃないの?
>>209 それ Business OR Logic になってる。
age
215 :
営利利用に関するLR審議中@詳細は自治スレへ:2012/04/03(火) 20:52:28.71
Rubyが国際規格になった事でもう他のウンコ言語は格下確定になってしまったね
そうなるといいね
217 :
営利利用に関するLR審議中@詳細は自治スレへ:2012/04/04(水) 06:05:04.34
Ruby>>>>>>>>>>>>>>>>>>>>国際規格の壁>>>>>>>>>>>>>>Perl,PHP,Python
>>215 ますます1.9への移行が進まなくなったね。。。
15年以上Perlを使ってきましたが,3ヶ月ほど前から
Pythonに変えました。PerlとPythonは重なる部分が多い
はずなのですが,Pythonの使いやすさに魅了されました。
O'Reilyの「自然言語処理 」Steven Bird (著)がとにかく
良かったです。圧倒されました。
Rubyも3週間ほど使った時期がありましたが,今のPython
のような魅力を見いだすことができませんでした。
元Perl使用者の方で,Rubyの魅力を分かりやすく指摘して
下さる方はいらっしゃいますか?
いません。
無理ですから
222 :
営利利用に関するLR審議中@詳細は自治スレへ:2012/04/06(金) 03:43:52.53
春休みになるとPHP使う奴が多くなるのか
まぁ最近おもったけど
プログラムの言語の宗教戦争に巻き込まれて
貴重な時間をつぶすようなレベルのバカは、
良い師に出会って学んでいれば優秀なPGになれたとしても、
自力で登って来れない奴は所詮そこまでということだろう
言語選択を見誤ったことによって、年単位の時間をつぶしているうちに
若い奴が、知識のある奴にほんの少し教わるだけで一気に追い抜いていく
そんな思いをしたくなければ、まず強くなることだ
どの言語がいいか?とか、何をすればいいか?はあえていわない
しかしPHPだけは違う
PHP使っている情弱は弱いから、右往左往して年単位の時間をつぶしていく・・・
まぁ効率を求めることだけが人生じゃないし、
それもまた良き人生哉
wikipediaのマージソートの項目でrubyのコード載せてる奴誰だよ
Wikiなんだから、文句があるならてめぇが消せ
それ「merge sort」の実装じゃなくて、merge部分だけだな
履歴を見ると中文版のサンプルをそのままパクったようだが
中文版を見るともっといろいろな言語の実装例が載っている
他のソート法だと、どの程度洗練させたものを載せるべきか、
だいたいピンとくるんだが、マージソートだとどのくらいかねぇ。
SMLで書いたやつが
なかなか簡潔でよろしい感じだった気がする
アルゴリズムの本に載ってる擬似コードが尽くALGOL系の手続き形言語風なのは、結局それが分かりやすいからに他ならない
物理の教科書に載ってるのがFortranだったり、80年代のアマチュア向けの本がBasicだらけなのと同じ、
慣れの問題に過ぎない。
読者がrubyに慣れてることを想定していいのかという話
しかもソート全体のコードでもないし
今時Algolに慣れてる人より多いんじゃねw
ALGOLやPascalで書かれてるコードはそのままRubyにも書き換えることが出来るだろう
結論としては、Rubyが気にくわないからいちゃもんを付けたいだけですねわかります
なんでいちゃもん付けられてるのかも理解できないの?
理解できるように説明することすらできないの?
パクリ元の中文版では、複数の言語での実装例が載っているうちの一つなので
Rubyのコード例はあれで問題はないと思うんだけど、日本版のように
たった一つのコード例として出すには、十分多くの人にとって読めるコードには
なっていない
下の「アルゴリズムの動作例」の記述も全然ダメ
英語版、仏語版、独語版、伊語版などもチラ見してみたけど、日本語版が
論外に出来が悪い
なぜあれでいいと思えるのかが分からないね
例えばあのコード例だとleft,rightの先頭を比較して、小さい方の値を取り出して
(もとのリストからは除去)結果の末尾に追加するということをやっている
それが動的配列であって、shiftメソッドや<<演算子がそういう動きをしているんだ
ということを知らなければ理解できない
だからRubyを知らなければ分からないコードだと言われる
配列を単にインデックスアクセスするように書けば、そんなことは
知らなくても理解できるコードになる
final[k++] = (left[i] < right[j]) ? left[i++] : right[j++]
これはC系言語のどれかを知ってれば読めるはずで、そういうプログラマが
十分多いだろうと思う
後値インクリメントと三項条件演算子を書き換えれば、さらに親切かな
インクリメント構文大好きちゃんなので、Ruby大嫌い、ということだけはよくわかった
Tiobe上位に入るC, Java, C++, Objective-C, C#, PHP, JavaScript, Perlあたりの
言語はどれもインクリメント演算子をサポートしてる
これらの「どれか」を知ってるプログラマの数は、少なくともRubyを知ってる
プログラマよりはずっと多いだろうよ
セマンティクスの整合性より、数が多い方が偉い、と思うのって、典型的な馬鹿の症状だよw
不特定多数へのアルゴリズムの説明として妥当かどうかという話だよ
セマンティクスの整合性について熱く語れよ
Rubyのコードのわかりにくさには別の問題もあって
あれはshiftがO(1)じゃないとmergeのアルゴリズムがO(n)にならないんだよ
だから実際にはシフトとプッシュがO(1)でできるFIFO(queue)構造であることを
前提にしてる
そんなことも、Rubyを知らない人には分からない
陽に配列走査のコードが記述されていれば、それがO(1)であるのは自明だ
「アルゴリズムの動作例」で一番面白いのはココ
>各データ列にデータ数が2以下になったところで、各データ列内のデータをソートする。
「2以下」が突然出てくるのも謎だが、ソートアルゴリズムの説明で何の説明も方法の
記述もなしで「ソートする」と書かれる
実際には要素が1になるまで分割が進み、マージの段階で「並び替え」が
行われるはずなので、単に記述者はマージソートのアルゴリズムを理解していない
疑いがある
そういう記述者なら、Ruby言語で書かれたmerge()だけの実装例を一つ載せて
満足しているのも分かる
てめぇで直せよ
247 :
デフォルトの名無しさん:2012/04/12(木) 12:42:16.60
ついに論理的反論もできなくなったかw
ま、最初からしてないけど
最初から論理的でもなんでもないいちゃもん付けだからな。
あのRubyのコードは不必要にleft, rightの破壊的変更をしているという
問題もあるよね
だからshiftがO(1)でなければならないとか、アルゴリズムにとってはまったく不要で
非本質的な要請まで出てくる
単にleft,rightともにシークエンシャルにiterateする必要があるだけなのにね
だから、ここでいくら必死に吠えても、Wikipediaは1バイトも良くならないよね。
どうして、そんなに必死にこだわるのに、Wikipediaを全く編集しないのかな。
Wikipediaは誰でも編集できるよね。
できることをしないで、必死にdisるだけ、っていう人を、普通、馬鹿、って言うよね。
別にwikipediaを良くしたいとは思ってないだろ
悪い例が挙がったからそれに付いて議論してるだけで
「付いて」って、必死に粘着して論難している、という状況を見事に表現した誤字だねw
2chで誤字を指摘されてるのは反論が出来ず、本質から逃げたい奴だけ
指摘するのは、だった。訂正訂正、また揚げ足取りが来るぞ、きゃー怖い
ためしにRubyでマージソートを書いてみた
で、wikipediaのと見比べてみたら
merged_array << (left.first <= right.first ? left.shift : right.shift)
ってところが同じになってた
RubyのArray#shiftはガッツリと要素コピーして隙間をつめるので
たぶん遅いのかもしれないけど
そんなことを気にしてたらRubyなんて使ってられないので
普段は気にせず富豪プログラミング
で、インデックスアクセスするように書き換えたら
(Rubyにはインクリメント演算子がないので、冗長になるのだけど)
100万要素のランダム数値配列のソートが
10.469秒から10.188秒になって、2.7%高速化した
Rubyでの小細工とランタイム内でのメモリコピーがどっこいどっこいってことか
ある程度小さく分割されると、挿入ソートに切り替えてみる最適化をしてみたが
インデックスアクセス化よりも効果がでなかった
コンパイラやJIT系VMだと効果が出るのだろうか(Rubyにそんなものはないが)
うーむやはりRubyレベルでは小手先の最適化は意味がないのかも
アルゴリズムレベルの最適化じゃないと
一人で何言ってるの?
知る者は言わず、言う者は知らず。
Rubyのshiftって本当に
> RubyのArray#shiftはガッツリと要素コピーして隙間をつめるので
これやってるの?
そういう実装だとshiftはO(n)になる気がするけど
shiftがO(n)だと全体がO(nlog(n))にならないので
「マージソートの実装」なら、いくらLLでもさすがに気にしないといけないのでは
>>256 わからないなら書き込むなよ、おまえがwwww
小さい配列ならmemmoveで1番目の要素以降のメモリまるごと
要素ひとつ分手前にずらすとかやってるようだ
ただガッツリって言葉から想像されるような
ary[0] = ary[1]; ary[1] = ary[2]; ... みたいなことはしてないでしょ
アンチRubyバカに、そんな高等なこと要求するなよw
rubyは直感的ではないという結論でいいよ
すいません、うそでした
ちゃんとRubyのソースを理解したわけではありませんが
ざっと見たところ、Array#shiftは
先頭のポインタを動かすだけのようです
配列途中の削除や挿入だとメモリ移動が発生するので
shiftもそうかと思ってました
さすがにそんな間抜けな実装にはなってなかったようで
でも、shiftで空いたメモリを再使用するようにはみえないんですが
どうなんでしょうRubyのソースに詳しい人
shitとpushを繰り返すと無効な領域がどんどん増えていくのかと思ったら
配列が増えて確保していたキャパを超えると
新たに領域を確保してコピーしてから古い領域を放棄するので
shiftでずれたポインタもついでにリセットされるようでした
だからmemmoveでメモリ前にずらして再利用してるんよ
このスレのrubyプログラマはあのwikipediaのページを支持する立場なのw
それこそ底が知れるよw
文句があるなら自分で直せという話をすりかえるなよw
それから、rubyインタプリタのソースコード見ても、どこにも証拠が無い説を
堂々と主張して誹謗したことも忘れて欲しいらしいな、この馬鹿は。
>>270 あのrubyが如何に糞かということだけが問題だから
そんなに耳が痛いのならお前が修正してやれよw
>>265 うーむ、ソースがよくわからない
埋め込みオブジェクトや共有Arrayがややこしい
理解力が足りないのか(その可能性は大)
単純にポインタをずらすだけじゃなくて
共有状態になるのかも
連続してshiftするだけの変更ならポインタ加算だけで済むけど
そこからshift以外の配列途中への配列サイズ変更を伴う破壊的変更をするときには
共有状態が解除されてメモリコピーが発生するのかな?
配列が極端に小さい場合(デフォルトで16未満)と
一度に複数個のshiftするときは
メモリコピーで先頭に詰めるのはわかりました
複数個のshiftをするときでも、以前に1つだけのshiftをするなどして
配列が共有状態になっていると
メモリコピーすることなく、ポインタの加算だけで済むようです
たぶんコピーオンライト的なテクニックを使いつつ
メモリの再配置の回数が少なく済むように工夫して
償却定数時間の意味でのO(1)を達成できるように工夫しているんだろう
とソースも読まずに適当に想像で物を書いてみる
実装がdequeになっていないとすれば、配列のメモリが実際にフラットでなければ
ならないような実装上の制約があるんだろか
274 :
デフォルトの名無しさん:2012/04/13(金) 00:16:18.16
Rubyとは関係ないが
マジックリストというデータ構造・アルゴリズムを聞いたことあったな。
名前しか覚えてないんだが、誰かどんなものか知らん?
いわゆるxorトリックを使ったリスト構造だったはず
双方向リストでは、各ノードに両方向へのポインタを保持するのが普通だが、
代わりに2つのxorをとったものを格納する
>>271 おまえが脳味噌がクソということが問題だろw
どんな個人攻撃を続けても、あのrubyのサンプルとしての糞さ加減が直るわけじゃないけどね
>>273 だいたいあってる
オブジェクト指向だからといって素直に配列オブジェクト本体を複製したりいちいち新規に作って全格納してたりしてたらあんまりにも遅いので、
共有配列とか駆使しまくって(複製元が変更される時まで)要素や配列部分をある程度使い回すようにしてる
>>277 おまえがどんなにここでrubyを誹謗中傷しても、現実には一切影響がないようになw
Wikipediaの記述を問題視してるだけだと思うが…
アレな信者が目立つのが、Rubyの最大の不幸だろうな(二文字の某コテハンとか…)
「WikipediaのサンプルコードがRubyで書いてあるのは問題だ」(キリッ
「Wikipediaの記述を問題視してるだけ」(キリッ
何をdisっても、どうとでも言い逃れができる論理でつねwwwwwwww
楽しそうだな
おめでたいruby脳は結構だけど、「ここで何を言っても現実に影響がない」なんて野暮すぎてなんと答えればいいのか分からない
おめでたいのは、ここで騒げばWikipediaが改善されるかのごとく必死なバカだろう?
ここで騒ぐことでwikipediaが修正されるなんて期待してないけど?
Ruby信者はバカだなぁ、と嘲笑してるだけで
ふーん。
Wikipediaの記述を問題視してるだけ、のはずだろwwwwww
現実に影響がないことを統計学的に証明しろよ
バタフライエフェクト!
風が吹けば桶屋が儲かる?
>>238 インクリメント演算子の戻り値を一行で複数使うコードは好きになれないなあ
破壊的操作(副作用?)を伴う操作の戻り値全般に言えるけど
一旦変数なりに退避してから使ったほうがトラブりにくいと思う
>>290 C/C++に関して言えば、三項条件演算子は副作用完了点になってるし
そもそもleft[i++]とright[j++]はどちらかしか評価されないので
そのコードに関して言えば
stack.pop() - stack.pop() // <-不定
みたいな問題はないよね
まあいちいち考えるのが面倒くさいし、わかりにくいから
その手のコードは避けるという態度はありかとは思う
K&Rあたりだと微妙に生煮えな態度を取ってた記憶がある
(わかりやすいコードを良しとしつつも、こういうのは覚えたほうが便利だぜ的な)
292 :
274:2012/04/13(金) 23:02:32.28
uyは名無しで書き込むようになったのか、哀れだな
もうRuby初心者スレには来るなよ
今のお前には存在価値がないと自覚しろ
295 :
デフォルトの名無しさん:2012/04/14(土) 17:52:32.28
だな
最初から存在価値がないRubyと同じだ
Rubyも糞、Ruby使いも糞
RubyもPythonもウンコ言語だろ。
軽量やら簡単やらいってコーディングスタイルがっちがちに固めてる。
Pythonなんて補完機能付きのエディタないとまともにプログラミングできんやん。
Rubyもなんでもかんでも取り入れたからもはやクチャクチャ過ぎて初心者向けなんて言えんわ。
こんなんなら開発環境と直に連携できる静的型付けのほうが圧倒的に生産性が良い。
所詮スクリプトでしか使い道が無いのにCの代替だの開発者のオナニーで使いモンにならなくなった。
それなのにいろんなアプリのスクリプトにRubyとPythonが使われてる。
害悪言語RubyとPython、両方とも消えてくれえええええええええええ!
Pythonで補完なんて使ったことないが何書いてたんだ
スクリプトしか使い道がないならアプリのスクリプトに使われるのは別にいいだろ。矛盾してるよ
オートインデントって言いたかったんだろう
>>299 だぁぁぁぁぁかぁぁぁぁぁらぁぁぁぁぁ
オレが使ってるソフトのスクリプトはどれもダブル害虫害悪言語のRubyとPythonなんだよ。
使いたくも無いのに使うことを強要させられてる。
わざわざスクリプトの言語仕様なんて覚えたくも無いのに、
構文クチャクチャのこのダブル2凶悪言語が使われてるせいで俺の生産性はどん底へダウンだ。
特に反復計算したいのに両方ともForeach文の仕様がクソ過ぎるだろ。
オブジェクト指向なんてもはや目もあてられんクソっぷり。
Javaが良い。Basicが良い。Luaが良い。
国策で広められたRubyは害悪そのもの。
互換性最悪のPythonなんて使うこと自体が罪。
両方とも消えてくれと切に願うばかりだわ。きえろおおおおおおおおおおお
>>301 > Javaが良い。Basicが良い。Luaが良い。
この一文でネタと分かったwww
>>302 気付くの遅いな。俺は最初のレスからネタ臭を感じ取っていた
>>302 同じ系統のソフトにスクリプトがJavaのやつがあるんだよ。
なんで俺が使ってんのはPythonなんだよ。なんでRubyなんだよ。
まじくそ消えろ害悪ウンコ言語どもおおおおおおおおおお!!!!
>>301 for i in [1,2,3]: print i
[1,2,3].each{|i| print i }
どっちも屈指の書きやすさですがJavaではどう書くんですかね
int[] intArray = {1,2,3};
for (int i : intArray) { System.out.println(i); }
型も宣言されていて実に分かりやすい。
IDE直結だから入力もそこまで苦労せんし。
>>305 Python3系じゃエラーだろ。今まで動いてたソースを切り捨てる時点で論外。
Rubyは普段、||なんて使わんのに、Foreachだけ使いやがる。
{}も使い分けが意味不明。構文が整っていない証拠。
本当にクソ言語共だな。
> Rubyは普段、||なんて使わんのに、Foreachだけ使いやがる。
さてはRubyのブロックをとるメソッドはeachしか理解できなかったんですね?
IDEいるのかよwwwなんというブーメランwww
Javaなんて補完機能付きのエディタないとまともにプログラミングできんやん。
変に知恵を持ってないアンチの痴態には癒される
きっと癲癇なんだろう
これまでいなかった人が日曜の昼にだけいるんだからそりゃお察し
>>307 うん、スクリプト言語の仕様なんて理解する気はさらさらない。
||とbegin〜endと{}を混同してる時点で適当に設計したのがよくわかる。
これからもっとクチャクチャになるんだろうなぁ〜
>>308-309 補完とオートインデントと間違えた。
ただでさえ動的型付けでエラーの原因が分からんのに
Pythonはtabなんて下らん理由でエラーが発生するからクソ
>>310 個人的には理解が足りないまま叩いてる奴は目障りだなあ
オートインデントないエディタってなんだよ
そのくせJavaはIDE前提とは都合のいい奴だな
考えて作ったであろうRubyも継ぎ接ぎだらけ
>>314 理解できないことが問題なら軽量言語として失格だろ。
こんなクチャクチャ構文を押し付けるならRubyは超ヘビー級言語だわあ。
マッツのオナニークソ言語だなあああああああああ!
>>315 インデントの空白数が足りないのはオートインデントでどうにかなるが、
ロジックミス自体はオートインデントがあろうがなかろうが判断できない。
普通の言語ならif文の閉じで判定できるものをPythonは捨てたからバグばっかりの言語。
その上、互換性まで切り捨てた。
うわ!バグ生成用言語だったんだPythonって!クソ杉いいいいいいいいいいいい!
結論
Ruby:超ヘビー級言語。断じて軽量ではない。
Python:バグジェネレート言語。バグ潰しがコーディング。
>>317 じゃあ誰かがJavaを理解できないと言えばJavaは糞言語になるんだな
バカみたいな文体にすれば何言っても許されると思うなよ
Python:超ベビー級言語
とか書いておけばいいものを
なぜ蛇でなく赤ちゃんなんだ
Java使いはアホという印象操作に違いない
そしてそれは成功している
よかったな
>>319 Javaは軽量言語じゃないだろ。そんなんプルグラマなら100も承知。
複雑でも生産性が高い。スクリプトとして使いたくなるくらいに便利。
Rubyは軽量言語という触れ込みの癖して複雑、
スクリプト言語として失格なのに行き場がスクリプトしかない。
いちいちIDE起動すんのかよw
とりあえず、スピードから言えば、
Javaの方がスクリプト言語より高速
ではRubyとPythonはこのスレから除外するということで。
プルグラマが登場
LL罵倒スレじゃないんで
持ち上げる言語もLLで頼む
比べるのならJavaじゃなくて
Groovyとかでよろしく
>ただでさえ動的型付けでエラーの原因が分からんのに
>Pythonはtabなんて下らん理由でエラーが発生するからクソ
無能自慢乙
>>313 > ||とbegin〜endと{}を混同してる
混同してるのはお前の脳内の話だろ?
文法がカオスなのは確かだが
ブロックの引数と例外処理とブロックを混同とか、根本的に違うものを混同する意味が解らぬ
331 :
デフォルトの名無しさん:2012/04/17(火) 01:52:47.19
Java ScriptとPHPだったらどっちを覚えた方がいいでしょうか?
332 :
デフォルトの名無しさん:2012/04/17(火) 05:08:57.72
JavaScript
微妙だな。PHPの方が簡単ではある気がする
どっちかしか選べないならJavascript
そうじゃないならもっといいのがある
JavaScriptの特にjQueryは楽しい
PHPはバージョン間の互換性のなさに苦しめられた
JavaScriptはブラウザ間の違いで発狂しそうになるがな
phpはクソバカ無教養の俺でもなんとなく使えたから好き
その違いをjQueryが吸収してくれるのは快感
339 :
デフォルトの名無しさん:2012/04/17(火) 15:46:35.61
PHPとPerl、今からやるならどっちがいい?
Perlの正規表現は強力だって聞くから若干Perl気味。
大量のHTMLのページ内の特定のDOMをエクセルの内容に一括で書き換えたい。
動的にするんじゃなくて、HTMLファイルを書き換えたい。
PHPでもpreg系関数でPerlの正規表現が使える
そんなに複雑でなければそれで充分
大量のHTMLの処理はどちらでもできるから、
PerlとPHPの両方をマスターして気分で使い分けるといい
341 :
デフォルトの名無しさん:2012/04/17(火) 16:03:34.63
ありがとー
Perl偏重だけど、正規表現でやろうとは思わんなぁ・・・
Web::ScraperとかHTML::Treeとか色々あるので見てみてね。
>>341
phpとjsは、プログラム大嫌いな俺がプログラムでメシ食えるようになった
奇跡的言語、俺の中では。
特にphpのだいたいでいいっしょーだるいって感じのノリが大好き。
適当過ぎて微妙に使えないところをどうにか補えるところもだるかわいい。
PHPなんて素人ですらそのプロダクトに必要な関数だけ知っとけばなんとなくコピペでできちゃうからな
完全にhtml埋め込み前提なのがいいよね
htmlやってcssやって、次に動的なサイト作りたいってなった時のハードルが圧倒的にひくい
phoマスターしたらわりと他の言語いけるし
小学生のころPerlでCGIチャレンジしようとしてあっさり挫折した
あのときphpを選択してたら
いまごろスーパープログラマーに…
おらもphoマスターになりたい
トンデモの温暖化懐疑論の武田の言うことなんか真に受けるな。
だいたいどんな言語だって、「完全にマスター」なんてできないから。
ある程度以上複雑なものなら、上には上のレベルがある。
程々で見切って、適材適所で使うべきものを使えなきゃダメ。
349 :
デフォルトの名無しさん:2012/04/19(木) 17:56:30.65
温暖化説のほうが「トンデモ」になりかけているような。
政治的道徳的説教で科学を語った(騙った)連中の末路は、どうなるか?。
楽しみ。
350 :
デフォルトの名無しさん:2012/04/19(木) 18:00:37.00
地球温暖化説は、科学を装った道徳的攻撃だった。
彼らのいう「非科学的」というレッテルは、「非道徳的」の言い換えだった。
そして、科学を騙った道徳家連中の一部は、いまや没落しつつある。
正直嬉しくて楽しい。あいつら本当に鬱陶しかったから。
お花畑板に帰ってねw
匿名掲示板なんて煽りあい上等なのはわかるんだが、匿名でしか語れない話題ってあるじゃん
LLの仕様についてどれだけ適切な突っ込みしても顕名だったら批判殺到するでしょ?めんどくさいでしょ?
だからこういう匿名掲示板にも存在意義があると思うんだよ
顕名でどれだけ適切な突っ込みしてもdankogaiとかotsuneが絡んでくるでしょ?
そんなめんどくさい状況を避けるためにもここはもっと機能するべきなんだよ
もっとまともな議論しようぜ
353 :
デフォルトの名無しさん:2012/04/20(金) 02:58:46.25
>>352 賛成。誰にだって知らないことはある。
知らないことを知らないまま適当に殴り書きしたい。
だけど下手に有名だとそうも行かない。
適当なことを書くと、面倒くさいツッコミが入る。
いちいちレスしなけりゃいけなくなる。
それが嫌だと下調べをしないといけない
面倒くさい事この上ない。
俺は適当なことを書いてその会話から広がってる話を
上から目線でふーんとい言いながら勉強したいだけなんだ。
その姿勢は人としてどうかな?
355 :
デフォルトの名無しさん:2012/04/20(金) 03:18:59.57
>>354 だから匿名でやりたいってことだよw
名前出すところではまじめにやる
面倒くさい時は匿名で適当にやる。
いつもまじめに生きてたらつかれるぞw
特定しました。
冷静で現実に則したコメントはツイッターの方が多いね
そうだといいがな〜
流され易い人もまた多いのよねツイは
OSは基本ソフトなんだから、基礎に徹してくれるだけでいい
Windowsは基礎さえグラグラ、ケバケバしくゴテゴテ
OS はともかく e糞plorer がひどすぎ
> 匿名掲示板なんて煽りあい上等なのはわかるんだが、匿名でしか語れない話題ってあるじゃん
> LLの仕様についてどれだけ適切な突っ込みしても顕名だったら批判殺到するでしょ?めんどくさいでしょ?
> だからこういう匿名掲示板にも存在意義があると思うんだよ
> 顕名でどれだけ適切な突っ込みしてもdankogaiとかotsuneが絡んでくるでしょ?
> そんなめんどくさい状況を避けるためにもここはもっと機能するべきなんだよ
> もっとまともな議論しようぜ
的外れないちゃもんを、「適切な突っ込み」だと、あなたの脳みそが間違った評価をしてるだけではないですか?
的はずれないちゃもんなのか
適切なツッコミなのかは、
内容によって変わります。
それとも、すべての書き込みが、
的はずれないちゃもんだとでも?
>>362は的はずれないちゃもんですけどねw
そんなことよりmrubyの話でもしよう
コンパイルしてバイナリ吐きたい人には朗報のような
そうだな。それらが成熟してきた時に
また教えてくれよ。
いいものでも普及しないものには興味はない。
どうせそんなものは途中で開発もサポートも
終わるのがわかってるから。
つまんない人
成熟した処理系が好きな奴は一生FORTRAN66でも使ってろ
mrubyについておもしろいこと書いてくれよ
話が広がらないじゃないか
mrubyであいうえお作文やるとかさ
サクラエディタ、秀丸、gpad 並の高機能エディタで、
Rubyがマクロに使えるやつないかなー
redcarがあるけどうちのノートでは重くてダメだった
rumacsかpymacsだれが作って
禿py
なんで今更ruby
対抗して禿丸エディタ作れ
巣に帰れ
phpのループ文でCPU使用率が100%になるのですが、VBのDoeventsみたいな
他のタスクに処理を渡す関数ありませんか?
もしくはPHP自体のCPU利用率を制限する方法とか・・・
解決しました
100%になるようなループを書く方が悪かったですね
PHPのような糞言語で時間にシビアな処理を書くなアホ
>>369 サクラエディタってWSHに対応してたから
ActiveScriptRubyが使えるのでは
と、試してみたら
サクラエディタが落ちた
rumacs/pymacsいいなー おれも欲しい
geditとか(geanyも?)ってPythonでプラグイン作れるし、VisualStudioの
Python補完も充実してきてるからPythonはいいんだけど、
Rubyはエディタがいまいちなものばっかり
自分で簡単なもの作ろうかとか考えては、Rubyの後方互換の不安で止めてしまう...
つまりRubyは糞ってこと
381 :
379:2012/04/26(木) 20:03:27.18
本当はRubyにしたいんだけど、現状はPythonが実用的だからPythonを選んでる
俺はPythonもRubyも両方好きなので、誤解なく...
欠点を認めないことを間違ってるとは言ってないから問題ないだろ
欠点の存在を認めるこについて言ってるのであって
欠点の存在を認めることについては何も言ってない
たしかに認めるこ(ママ)について言っているだけだな
386 :
デフォルトの名無しさん:2012/04/27(金) 05:17:08.26
RubyとPyhon、両方好きって。
スクリプト言語いくつも肩入れしたって意味なくない?
仕事で仕方なくいろんなスクリプト言語使わざるをえない状況はあるだろうけど。
特定の言語を毛嫌いするこの方が意味ない
どっちか残すとしたらRubyだなあ
Pythonはワンライナー書きにくいからsedやawkの代替にならないし
sedやawk使えば良いじゃんw
Perlもだけど、高級シェルスクリプトは何気に便利よ
ワンラインにするまでもないよな
mRubyの話ってどこいった?
コンパイルするってことは、補完しやすいってことなのかな
393 :
デフォルトの名無しさん:2012/04/27(金) 08:23:07.69
mrubyは対象ユーザが限られてるからなぁ
コンパイルと言いつつ実は中間言語に変換してるだけ?
>>386 スクリプト言語で何をやるかによるよね
俺はRails好きなのでRubyは欠かせないし、言語処理とか計算科学系のライブラリはPythonが圧倒的だから二つとも使ってる
言語は使い分けなんだよな。目的で使い分けたり。
簡潔に書ける言語かどうかとか。
同じ処理をどちらの言語でも記述できることも多いが。
このスレに複数の言語を扱える人が多いかは知らないけども。
思いついたアルゴリズムを素早くコーディングする力は必要だろうな。
実際の所、アルゴリズムを自分で考える必要は殆ど無い。
設計なら必要になるけどな。
ここのアルゴリズムはできてる前提でそのコードを
どれだけ効率的に組み合わせるかという設計の方が重要。
>>398 それをいうのなら
>>396にだろ。
自分の仕事を基準に考えたらあかん。
実際の所、アルゴリズムを自分で考える必要は殆ど無い。
設計なら必要になるけどな。
ここのアルゴリズムはできてる前提でそのコードを
どれだけ効率的に組み合わせるかという設計の方が重要。
えーと、ドカタ仕事乙って言って欲しいのかい?
ありもののコードを組み合わせるだけの
アホ的作業に設計って名付けるのは勝手だけど
底辺だけで勝手にやってろよな
>>400 あれ? 設計を考えることを
組み合わせるだけだと思ってるの?
上流工程から下流工程を見ている気分だよ。
さっさと納品しろw
>>397=
>>399は初心者本と画面をにらめっこしながら
プログラミングの練習でもやってろ
タッチタイプもできないだろうからキーも探しながらな
底辺は上流行程も下流行程もレベルが低い
そもそもまともな仕事が無い
アホ共の巣窟
ちょっとからかうと
すぐコレだw
お前ら現実社会でもそうやってすぐ言い合いしてんの?
普通に会話できないのか
悪口が入ってる奴、
それは明らかにネット弁慶だろう。
同じ事言ってるわけがない。
そりゃ
>>397みたいな馬鹿げた事いう奴は
現実社会じゃ接点無いからな
またはじまった
いろんな人がいていいじゃないの、という多様性のRuby
こうじゃないといけない、という画一主義のPython
といってもどっちもグルー言語
今後の行方が楽しみだ
>>410 ついでにPHPとPerlにもレッテルを貼ってみてよ
ソースした スパゲッティ好き Perl君
自立せず 親分ありきの PHP
スマン。俺にはこれくらいで限界です(ていうか全然レッテルになってないし)
Perl:何にでもCPANのライブラリを使ってみたがる。Perl特有の略記を使いたがる。
PHP:次々に追加されてきた組み込み関数を組み合わせて使いたがる。その結果、互換性が低いプログラムになりがち。
Perl: おいちゃん、いつもの
416 :
デフォルトの名無しさん:2012/04/28(土) 13:57:21.75
PHPの互換性が低いっていうなら、RubyとかPythonはゴミ以下じゃん
組み込み関数を使って互換性が低いとか
意味がわからないんだけど。
他の言語でも新しい組み込み関数を使ったら
前のバージョンで動かなくなるのは当たり前でしょう?
互換性ってそういうことですか?
418 :
デフォルトの名無しさん:2012/04/28(土) 14:08:38.80
省略はRubyの方がひどいだろ?1文字の関数とか2文字のコマンドとか。
勝手に2文字のコマンドとか入れるなつーの。
そんなんだから、Rubyを標準インストールするディストリビューション皆無なんだよ。
人の迷惑顧みないっで悦に入ってる、いかにもRubyらしいとこだと思うわ。
PHPが組み込み関数の引数の仕様や順序を変更してくるのは困る
こういうのは他の言語にもある?
http://www.atmarkit.co.jp/news/200809/11/ruby.html 本家Rubyでも「RubyをバージョンアップしたらRailsが動かなくなったということがある」といい、
バージョン間の互換性が問題になることもある。Ruby 1.8系では仕様を変えるような修正は
行わないことになっているが「機能追加と仕様修正は微妙」(前田氏)で、
例えば最近、stringクラスにcharsというメソッドを追加して機能拡張を行ったが、
すでにRailsが同名のメソッドを別の目的で使っていたために問題が起こるということがあったという。
LL系は互換性が低いのが多い。
さらにコンパイルエラーが起きないから
修正するのも難しい。
静的言語だと、メソッドの追跡が完璧だから
使ってはいけないメソッドや
引数の変更が、実行前にわかるんだよね。
425 :
デフォルトの名無しさん:2012/04/28(土) 14:27:50.96
>>419何のこと言ってる?
PHPって、10年以上前に書かれたプログラムでも余裕で現行バージョンで動く。
主要LLじゃ断トツで互換性が高い言語だ。
Perlは本体の変更は少ないが、CPANモジュールはコロコロ仕様が変わるから、PHPと比べれば明らかに劣る。
PHPって、いい加減、関数名とか引数の順番とか統一性持たせればいいだろうに、それを頑なにしない。
だから、古いプログラムでも動くわけだが。
順序の入れ替えで思い浮かぶのはPHPのこれくらいだな
implode()は、歴史的な理由により、引数をどちら の順番でも受けつけることが可能です。
しかし、 explode() との統一性の観点からは、 ドキュメントに記述された引数の順番を
使用する方が混乱が少なくなるでしょう。
>>419は何の話をしてるんだ
>>418 p()はデバッグ用関数だからオーバーライドしても最終的には問題はないと思うけどなー
428 :
デフォルトの名無しさん:2012/04/28(土) 21:31:41.79
ふと、2文字以下のメソッド名を適当に列挙してみた。
ruby -e 'p ObjectSpace.each_object(Module).map {|m|
m.methods + m.instance_methods}.flatten.uniq.sort.grep(/¥A..?¥z/)'
してみた。
[:!, :!=, :!~, :%, :&, :*, :**, :+, :+@, :-, :-@, :/, :<, :<<, :<=, :==, :=~, :>, :>=, :>>, :[], :^, :`, :at, :gm, :i, :p, :tr, :ui, :|, :~]
記号系は演算子の実体だな。
trはString、atとgmはTimeでiはComplex。
uiだけ分からなかったので調べてみたら、Gemの対話インターフェイス部か。
こんなことができるのか
rubyのおもしろいところだな
Ruby組み込みクラスの階層を表示するRubyスクリプトとか趣味で書いたなあ
431 :
デフォルトの名無しさん:2012/04/28(土) 21:48:30.82
>>429 念のため書いておくけど、これはインタプリタ組み込み済みのモノのみ。
ライブラリを読み込んだ結果追加されるものも表示するには、そのライブ
ラリを読み込んだ状態で実行する必要があるよ。
>>429 > rubyのおもしろいところだな
そうか、じゃあphp版を見せてあげよう。
$a = get_defined_functions();
$a = array_filter($a['internal'], function($v) {return strlen($v)<=2;});
print_r($a);
Array
(
[307] => _
[713] => pi
[1171] => dl
)
phpも面白いね。
>>432 ありがとう。勉強になります。
組み込み関数全体で1500個くらいか。
じゃあPythonも
> print([f for f in list(globals()) if len(f) <= 2])
['In', '__', '_i', '_']
Perl
perl -MPod::Functions -MData::Dumper -e 'print Dumper([grep {$_ if length($_)<=2} sort keys %Flavor])'
$VAR1 = [
'-X',
'do',
'lc',
'my',
'no',
'uc'
];
こんなことが出来るのはRubyだけだと思っていたのに! 悔しい!
間違えた
perl -MPod::Functions -MData::Dumper -e 'print Dumper([grep {length($_)<=2} sort keys %Flavor])'
珍しくいい流れじゃないか
Rubyだけの特権なんてものは
何もねーよw
その特権がないというのがRubyの特権
言語の特権なんて、P言語系で絞ったとしてもPHPのgoto文くらいのもんだ
PHPの関数には後から追加しました感がある
>>441 \ルビ〜ン/
Rubyは〜?ねぇRubyの特権は〜?
オプソがGitHubに収束しつつあるいまRubyの将来はますます明るい
446 :
uy:2012/04/29(日) 10:49:32.41
Rubyに足りないものを教えてやるよ
「初心者が一番最初にRubyを学ぶ理由」が足りないんだよ
それを用意すればすぐだろ
Rubyをこの屏風から追い出してください!
私が捕まえてみせますから!
Git自体がファイルが丸ごと詰ったリポジトリの
丸ごとコピーの量産を強いるクソじゃないかw
>>448 他のRCSで管理してたプロジェクトをGitにしたら
そんなでかくなったら扱ってらんねーよってくらいリポジトリの容量が膨れたりするの?
いまちょうどGitの本読んでるんだけどそこらへん書いてない(か見あたらない)んだよね
448は、CVS風のディレクトリ毎管理というスタイルを絶対的に信奉しているのだろう
CVSはファイル毎管理ですよ。
いわゆるコンビニ
454 :
uy:2012/04/29(日) 15:50:21.08
>>430 は?
ancestorsするだけじゃないの?
class A < class B ; self end
p ancestors
end
>[A, B, Object, Kernel, BasicObject]
何がしたいの?
455 :
デフォルトの名無しさん:2012/04/30(月) 12:15:38.55
プログラミング言語を覚えることは手段であって目的ではない。
なるべく簡単な言語を使った方がいいです。
大切なのは「難しい言語を使えること」ではなく、「どんな言語を使ってでも、作りたいものを作れること」。
上記のように言語のマニアである必要はない
よく訊かれる質問、 特に、主として C 言語を利用しているプログラマの方からの質問なのですが、
「C# は初入門の言語として適切か」と言うものを受けることがあります。
多いのは、 「C 言語 → C++ というように段階を経て学んでいくべきなのではないか」という意見です。
「Java や C# だと、class や static など、最初に説明しないといけない“おまじない”が多いし・・・」とか、
「Java や C# などのオブジェクト指向言語を学ぶにしても、 その基本は構造化プログラミング言語だし」というのが、
これらの意見の理由です。
この質問に対する(僕個人の私的な)答えですが、 結論から言うと、初めから C# を学ぶ方がいいと思います。
例えば、C 言語なら最初から理解するのが難しい“おまじない”の部分がないかと言うとそんなはずもなく、
#include などはやはり“おまじない”ですし、 Java や C# などの新参の言語は、
構造化プログラミング言語としても見た場合でもかなり優秀な言語です。
むしろ、C 言語など、長い歴史を持つ言語は、 昔からの悪習を引きずっていて、
下手に学ぶと悪い癖が付いたまま抜けなくなる危険性の方が高いです。
>>457 272 名前:デフォルトの名無しさん[sage] 投稿日:2012/04/30(月) 12:37:43.49
>>271 悪い癖が付いて抜けなくなるヤツはどんな言語を習っても悪い癖が付く。
273 名前:デフォルトの名無しさん[sage] 投稿日:2012/04/30(月) 12:38:14.78
そういえばC#ってCSではあまり注目されてない気がする
274 名前:デフォルトの名無しさん[sage] 投稿日:2012/04/30(月) 12:39:36.29
>>273 CS?
275 名前:デフォルトの名無しさん[sage] 投稿日:2012/04/30(月) 12:44:10.15
>>274 Chinese Society
276 名前:デフォルトの名無しさん[sage] 投稿日:2012/04/30(月) 12:50:44.39
>>275 つまらない。
ああ、最初に手続き型言語をやると、関数型言語を一生理解できなくなる危険性が高くなるねwww
460 :
uy:2012/04/30(月) 12:58:51.20
>>457 C言語ではなく、C#から学べ?
俺から言わせれば、たいした差ではないがお前は正しいことを言っている
けど、
「初心者はC#から学べ」と、世間に伝えきる前に
C#という言語は廃れて、MSは次の言語を発表してしまう
その言語が初心者向きとは限らない
出来る奴はどの言語から入ったとしても、最終的にはすべての言語を自分から触る
それ以下のゴミカス共のことは、あまり考えなくていいと思うよ無駄だと思う
おまじないって表現がそもそも悪習と思うんだけどなぁ。
初めてJavaのハローワールドを見たときに
「public static void mainはおまじないです」みたいな説明を見て萎えた記憶がある
works like a charmで万国共通だから気にしるな
>>461 じゃあ、1+1=2はそう決まってるからではなく、
なぜ1+1=2なのかを、小学1年生に教えてこい
MatzちゅっちゅとかぼくGuidoだお!とかやったら立法機関に通報されるのか
おそろしい世の中になったものだ
stdio.hをスタジオと見間違えるのも誰もが通る道
>>463 1+1=2を真面目に説明するのは難しいぞ。
大人でも馬鹿には理解できん。
468 :
uy:2012/04/30(月) 14:03:33.71
>>467 じゃあお前説明してごらん
そしたら
バカが理解できないんじゃなく、お前がバカだから説明できないんだと気づけ
>>463 そういうんじゃなくて
長いからって意味だよアホ
>>464 こんなのでつれる奴いんの?
>>468 1+1=2を説明しろって。
そんなもん、数学の本読めよ。こんなとこで聞くもんじゃないだろ。
書ききれんわ。
なんでも数行で済むと思ってるんだな、、、
そういうのをあほっていうんだ。
そういうこと。
「public static void mainはおまじないです」
も同じで、知らない人にまじめに説明すると長くなるから
後に回しているだけ。
まったく、そんなこともわからない?
なんでmainってstatic何だろうな?
OS全体で見たらアプリケーションや、スクリプトのインスタンスのエントリーポイントだろ
明らかにインスタンスとして宣言されるべきだと思う。
こんなのオブジェクト指向プログラムに全く適合しないし
きちんと見直されるべき悪習だと思う。
確かにJavaのおまじないは長くて怖いよね
Cの#includeなんて関数ライブラリを使いますって言ってるだけじゃん
高校生でも数学的な関数は知ってるんだから何の抵抗もないはずだが
俺はこんなこと最初から言えよと思ったね
> Cの#includeなんて関数ライブラリを使いますって言ってるだけじゃん
そしたら次の質問が来る。
関数ってなんですか?
ライブラリってなんですか?
馬鹿は、これらの用語を知らないということを
想定できない。
関数を使います
・・・
今から一次関数のグラフでも書くのかな?
>>475 馬鹿のふりしてるのくらい分かれよ。馬鹿。
>>475 言い返せないなら、レスすんのやめとけよw
あー、退行現象ってやつねw
Cで関数といったらprintfがでてくるだろうが、
これは数学的な関数とは違うもの。
>>477 あえて数学的な関数と言った意味が分からないのかよw
関数じゃなかったら機能とでも言えよ
お前らが想定してる馬鹿は一生かかってもプログラミングなんて出来ないんだから心配するだけ無駄だよw
>>413のどこが馬鹿なんだ?
おまじないで済ませれば疑問は「#include <stdio.h>ってなんだろう」の一点だけ
正面から説明しようとすれば#includeはCプリプロセッサに対するディレク云々となる
どっちがマシかは明白
どうしようもない馬鹿はCやJavaなんかじゃなく
標準出力が組み込み関数や命令になっている言語をやった方がいいみたいだなw
>>483 じゃあ全部おまじないと言ってすましとけ。それが教育ならな。
そうそう、1+1と一緒でね、
最初から正しいことを教えようとしても
うまくいかない。
自分が最初にどう習ってきたのかを忘れて
いきなり、今の自分基準で物事を考える。
こういう奴の教育方法では人は育たない。
まぁ、でも「おまじないです。」と書かれるとなんのことか気になるわな。
そういう好奇心は大切だ。
>>485 馬鹿かw
「おまじない」と言う時は
おまじないじゃない部分を
今一番重要な本質を教える時に使うんだよ。
1+1が2になるなんて、幼稚園児でも直感的に分かるだろ
公理の証明を知ってるわけでも、おまじないだと思ってるわけでもない
おまじないと思って先に進んで
理解ができた時に、ちゃんと教えればいい。
そこは「1+1はどうして2なの?」「そう決まってるからだよ。」
と大差ない。
>>489 幼稚園児は、1も+も=も2も知らんから直感的にはわからんぞ。
直感的で逃げるのは良くない。
>>492 それって、大学生でも1+1を理解してないと言ってるようなもんだよね
プログラミングの初学者に必要なのは専門家的な理解じゃないよ
そうそう、今の自分基準で考えるから、
直感的に解るだろうといってしまうんだよねw
想像力の欠如。
どーでもいい
分かる奴の感覚を伝えろよ。学習者を舐め腐ってるからカスみたいな説明しか出来ないんだよ
どこのプログラマが、#include<stdio.h>をおまじないと思って書いてるんだよ
初心者はそういうのがいる
>>496 物事には順番がある。
誰が教えないといったか
馬鹿者め。
教えても無理だろ。お前が想定してる池沼学習者じゃ
i = i + 1
だって数学と違うだろ?
こんな記法を使う言語はすべてダメだ
おまじないが必要だと信じてる馬鹿には言われたくないね┐(´∀`)┌ヤレヤレ
>>502 だからさ、違うから何だというの?
それだけで挫折する馬鹿を想定してるから話が何も進まないんだよ
mov a, h
ld d0, d1
>>502 > i = i + 1
iが+無限大を表す言語なら良いんじゃね?
参照したら無限ループになる
なんで配列の添字を0から始めるのか、なんで代入に=を使うのか
そういう事について一瞬でも考えることは、おまじないとか言って思考停止するより大分マシ
レスはぇえ。
つか、みんな暇やね。俺もやけど。
>>504 初心者には、同じ事は何度も繰り返さないとわからないよねw
あ、君のことねw
教える順番の問題であって
教えないとは言っていない。
>>509 繰り返しは必要だから、最初から言えば良いだけの話
>>510 1+1と一緒で、最初はそういうものだと教えるべき。
最初から全てを正しく教えるのは効率が悪い。
そういうものって何だよ、それこそ理解不能
1+1が理解可能であることとは天と地ほどの差があるね
都合のいい詭弁
急がばまわれって知ってるかい?w
>>512 なんで1+1なの?って聞かれたらどう答える?
>>512 なんで1+1=2なの?って聞かれたらどう答える?
数を数えることが出来れば分かるだろ
その程度の理解をプログラミングの初学者にも与えろということだよ
エジソン
当時の逸話としては、算数の授業中には「1+1=2」と教えられても鵜呑みにすることができず、
「1個の粘土と1個の粘土を合わせたら、大きな1個の粘土なのになぜ2個なの?」と質問したり
>>516 ほらな、お前も結局答えられず、
そういうもの。で終わらせてるじゃんw
>>519 いきなり小学生に公理の話をするのか?
しないだろ? そういうふうに決まってるからで終わらせるだろ。
教えるとしたら、もっと理解がすすんで後からだろ。
それでいいわけだろ?
>>520 1+1の説明っていつやるの?
三平方の定理を使って解く問題が出たら、こういう定理があるとだけ言うのかよ
明らかに、定理の証明をするだろ
1+1は、公理じゃないし。
>>521 話がずれてるぞw
教えるときには順番がある。
いきなり全てを教えるのではなく、
理解が進んだ後で教えた方がいい場合も多い。
そういう話だ。
なんでそんなに#includeの説明をしたがらないの?
明らかに機能的な意味があるんだから最初に説明すれば良いだけだと思うが
>>523 ズレてないが。訳の分からないものを出来るだけ長く訳の分からないまま使うべきだと言いたいらしいが
で、1+1の説明っていつやるの?
その説明なしに小学生は明らかに足し算を理解してるが
その理解をプログラミングにさせないのはなぜ
> なんでそんなに#includeの説明をしたがらないの?
本当に何度も繰り返し言わないと理解しないなw
後から説明するって言ってるだろw
プログラミングに話を戻すと、初心者が
「#include "/dev/tty" とやったらどうなるの?」とか考えるのは
時間の無駄(他に先に覚えることがある)なので
最初はおまじないでも良いと思うよ
>>524 #include?
#include?くらい説明してあげたら。
>>525 > で、1+1の説明っていつやるの?
その説明が必要になった時。
それまではおまじないでいいでしょw
で、1+1はいつになったら説明されるの。いつがその時なの
>>528 本当に何度も繰り返し言わないと理解しないなw
後から説明するって言ってるだろw
>>529 #includeの説明が必要になるのっていつ?
最初にprintfを使うときでは?
>>532 他の言語を見れば、printf相当のことをするのに
#includeが必要無いものがある。
つまり、必要ではない。
>>533 何言ってんの?他の言語は#includeやprintfを理解するのに関係ないのだが
>>532 自分で関数を作るようになった時じゃない?
その時、関数にはプロトタイプ宣言が必要です。
さて、printfも関数です。プロトタイプ宣言はどこに書いてあるでしょう?
って感じで教えればいいじゃん。
ちなみに、K&Rはまさに一番最初から説明してあるけどねw
おまじないとか言ってる奴、言われてる奴は馬鹿同士で楽しくやってれば良いと思うよ
>>535 だな。C言語で言う「関数」が何かも知らないうちに
関数のプロトタイプ宣言が〜とか言われてもわからん。
最初からK&Rで学習した人間は腐るほどいるだろうな
>>537 そういう奴はどこまで言っても何も分からんから大丈夫
まるで、おまじないは上手な教え方と言ってるようだw
K&Rをいい本だって紹介している人少ないよね。
バイブルだから読んどけみたいなもんで。
>>542 本当に何度も繰り返し言わないと理解しないなw
後から説明するって言ってるだろw
俺の持ってるK&R第二版では
最初に#includeが出てくるのはp8だけど
まともに説明されるのはp108ですよ
プログラミング学習者には常識的な知能すら無いとするのがこの世界では普通なのかな
まあ確かに低学歴でIT土方ってやつが多そうだしな
>>546 そういう人格否定を始めた時点でお前は終わりだw
>>545 標準ライブラリについての情報を取り込むと書いてあるはずだがw
血眼になって探してもおまじないとは書いてないがw
>>548 あ、そんな程度の理解でいいの?
それなら教えるべきだろ
>>547 え、これが問題をすり替えてるって知ってたのか
俺が何を言っても個人攻撃しか返ってこないから、本当に馬鹿なんだと思って諦めてたんだがw
>>549 小学生が1+1について理解してる程度と一億回くらい言ったはずだが
>>548 > 標準ライブラリについての情報を取り込む
それは説明が不足してます。
標準ライブラリについての情報を取り込む
詳しくは、おまじないってことで。
と何も変わらんw
>>548 それ間違ってるじゃん。標準入出力ライブラリ(stdio)ならともかく
この#includeってのは標準ライブラリを読み込むときに使いますが
詳しくはあとで説明しますので、今はおまじないってことで
上の方に書いておいて下さい。
こういう文脈ならいいわけだなw
K&R手元にないやつ多すぎ。説明するのが面倒
K&Rに書いてる読んどけ、以上。
でいいじゃん。
お前らみんなあほ。
この#includeってのは標準ライブラリを読み込むときに使いますが
・・・いえ、正確には標準じゃないライブラリを読み込むときにも使いますし、
またライブラリを読み込むだけじゃなく、の定数とか定義されているだけの
こともあります。マクロの定義にも使いますね。
えーと他にもいろいろな使い方があって、
実際の所、単に他のファイルを読み込んでるだけなのでソースコードを書くことも出来ます。
コンパイルするときよりも前にプリプロセッサという処理が走って、
えと、コンパイルというのはですね、・・・
プリプロセッサというのは・・・
で、何の話でしたっけ?
まあ、要するにおまじないです。一番最初に書いておいて下さい。
おまじないって言ってる奴は結局
>>558みたいな救いようのない馬鹿なんだよ。はっきり分かった
今から
>>599が完璧な説明をしてくれるそうです。
それに対して皆さんでわからない所の質問をバシバシ突きつけますから
そのつもりで説明して下さい。
まあK&Rでも#includeはプリプロセッサの章(p108)で説明されてますけどね
だって最初は理解できないでしょプリプロセッサが何か
今から
>>559が完璧な説明をしてくれるそうです。
逃げた?
599に書き込む人は大変だなぁ。
ていうか、おまじないに批判的なやつって
#includeをおまじないレベルでしか理解できて無いんじゃね?
プリプロセッサを理解する必要はなくて
画面に出力するptintfという関数を使いたいから宣言してるってなんで言っちゃいけないの
馬鹿すぎるでしょ
#include 自体は単に他のファイルを読み込んでるだけだよね。
その中に書いてあることが何かをちゃんと説明するのは
すごく大変。
どうせ、途中で逃げる。
50歩100歩
「おまじないです」で逃げるか
「標準ライブラリ読み込む、おまじないです」で逃げるかの違い
何も説明できていない。
>>567 説明はそれで終わり?
書いてある言葉、#とかincludeとか、stdioとかの説明は?
ようするに、おまじないだよね?
>>567 だから、初心者はそういう「おまじない」レベルの理解で良いよね
俺もそう思うよ
>>568>>569 いやstdio.hにprintfという入出力関数があれば、数学関数を使いたければmath.hをインクルードするだろう
#include<stdio.h>が意味不明なおまじないと言うだけとは理解レベルが違う
エロイムエッサイムってなんですか?
悪魔を呼び出すときのおまじないです。
>>571 stdio.hってなんですか?
printfってなんですか?
入出力関数ってなんですか?
数学関数ってなんですか?
math.hってなんですか?
エロイムエッサイムってなんですか?
それぞれの単語の意味を教えて下さい。
それがわからないから、「おまじない」なんです。
普通は、おまじないじゃなくて、使いこなせる
小学生が足し算を出来るようにね
誰もプリプロセッサとかペアノの公理とか聞いてないんだよ
はい、ちゃんと理解して無くても
「おまじない」で使いこなせるはずです。
エロイムエッサイム、エロイムエッサイム
なんで繰り返しがfor(i=0;i<10;i++)みたいに書かれるのかというのを突き詰めて考えなくても
これが繰り返しを表すとは理解するはずだろ。それはもうおまじないじゃない
それをおまじないと言い張ってるのがお前ら
#includeも何をやってるのかくらい教えればいいだけ
>>576 で、それに対する質問は、おまじないで済ませるわけですよね?w
程度問題だろ。何も言わないのが論外なだけ
どうして何も言うべきではないと主張するのか理解できない
そんな考えでプログラミングしてる人間なんていないのに
あとおまじないとは言わないね。馬鹿みたいだから
>578
そもそも、誰が何も言わないといったんだい?w
ああ、「これは、おまじないです」と言うんだったね。メンゴメンゴ
#includeはprintfを使う時のおまじないです。
これでいいんだよ。
結局のところ、そういうもん。で終わらしてるしな。
ちゃんとした説明はしてない。
おまじないとは?
だから、そういうもん。ってなんだよ
まさか未だにおまじないと思ってないだろうな
コンパイル前、そしてコンパイル中は、
正しくコンパイルされるようにお祈りするのです
さあ、祈りなさい
>>585 > おまじないとは?
説明を後回しにするときの決まり文句。
現時点では正しい説明をしても理解が出来ないとおもわれる時、
最低限のコードを動かすために、とりあえずこの部分はこう書いておいてと
いうときにつかう、決まり文句。
端的に説明する能力のない人間の逃げ
>>589 本当に何度も繰り返し言わないと理解しないなw
後から説明するって言ってるだろw
>>589 聞いてるほうが理解できない説明なんて、自己満足でしか無い。
おまじないなどと、受講生を馬鹿にするのはやめなさい!
無駄に引っかかるのは聞いてる方ではなく喋ってる馬鹿
>>558
聞いてるほうが理解できてないのに、説明した気になって
「前に説明したでしょ!」とか言っちゃうんだよな、こういう奴はw
確かにこのスレでも連呼されてるな
「前に説明したでしょ!本当に何度も繰り返し言わないと理解しないなw」
そうそう、理解しない馬鹿には
何度も言わないとねw
>>595 「前に説明したでしょ」とは言ってないぞw
理解しない馬鹿には「おまじないです」で良いんじゃね
どうせ向いてないし
物事には順番がある。
あとで教えたほうがいいものは、
あとで教えれば良い。
それまではどうせ理解できないのだから
おまじないでよい。
まだやってんのか
お帰りw
一言何のためにあるのか言えば良いのに
馬鹿に教わった馬鹿はもうどうしようもないや。また馬鹿を育てるんだろう
「これはおまじないと教えなければならない」という呪いを受けてる奴は死ぬまでこの無意味な考えを変えることは出来ない
「おまじない」という言葉にこだわってるの?
違う言い方をすればそれで満足なのか?
意味を説明しろ!
>>602 何のためにあるのですか?
この質問に答えられますか?
printfを使うため
先生「printfを使うために#include <stdio.h>してるんです」
生徒「でも先生、#include <stdio.h>しなくてもコンパイルできましたよ」
先生「えっ」
生徒「えっ」
画面に出力するやつ
>>607 なんでprintfなのに、stdio.hなんですか?
printfを使うのなら、#include<printf>じゃないんですか?
このやり取りで分かるのは、お前が想定してる学習者の知能が幼稚園児以下だということ
そしてお前の知能がそれ同等だということ
>>610 なんでprintfを使うときに必要なんですか?
BASICではいりませんでした。
>>612 説明できないなら、言い訳なんかしてないで、さっさと逃げろよw
#include <stdio.h>
これを「標準入出力ライブラリについての情報を含めるべきことを、
コンパイラに対し指示するもの(K&Rより引用)」と説明されて、
「ちゃんと説明されてる」と思うならC言語の理解度が絶望的に足りない
>>611 そこまで理解が進んだ奴と、ただ無意味なおまじないと思うことが同じだと思ってるお前が馬鹿
printfを使うときにいるんですよね?
forつかうときは、何がいるんですか?
>>615 その程度の説明はすべきだろ。現にK&Rではしているのだから
どうしても、1+1はペアノの公理を理解しなければならないと思う理由は何?
このように、怒涛の質問に
答えられないのでした。
ちゃんちゃんw
あぁ、うるさいな!
おまじないだよ。
上に入れておけばいいんだよ!
>>619 それってどんな問題のどの段階でも言えることだろ
でも実際にはそんなことにはならない。K&Rで学習してもね
お前が馬鹿だからそうなると信じてるだけで、あるいはお前の場合はそうなるのかもしれんが
結局、ちゃんとした説明はしないで、
最後にはおまじないでおわせるんだw
おまじないと言えば納得する人間と
質問を延々と続ける人間が同一人物だとはw
「あとで説明する」の代わりに「おまじない」と
言ってるだけだろ。
何をそんなにムキになってるんだかw
>>622 何も説明しないでおまじないと言うのと同じだと信じたいようだけど、全く違う
お前は身の回りの全ての自称を根底までは理解してないだろうが、意味を理解する程度はしてるはずで
間違っても一番最初の段階でおまじないだと思って全ての思考を停止させてはいないだろう
そんなことは不可能だよ
>>623 今説明してもわからないから、
延々と質問を続ける時間の無駄を無くすために
後回しにするという意味で、おまじないというわけだよ。
>>625 今は意味理解できないから、おまじないといっておいて
あとで説明するんだけど?
>>626 なんでprintfを使うためと言っても分からないんだw
脳みそに欠陥があるとしか思えないのだがw
>>627 意味は理解出来るんですけど?お前には無理だろうけど
おそらく#includeは永遠におまじないなんだろうな
無理だよ。こんな理解力じゃあ
>>628 printfを使うために、なぜこれが必要なのかがわからない。
printfを使うためのおまじないですか?
おまじないですね?
>>631 printfを使うための宣言だよ。そういう意味がある
なんでそう言わないんだ?馬鹿なの?
「printfを使うためのおまじない」ならいいってことかぁぁーーーーーーーーーー!
printfを使うためと言う事と、ただおまじないと言うことが同じだなんて、どんな理解をすればそうなるんだ?
>>632 だから、なんで必要なんですか?
BASICではいりませんでした。
printfを使うための宣言っていうのは
printfしないと使えないんだなって誤解しちゃうからよくない
K&Rもそういう説明はしてない
>>639 そうだよ。馬鹿はただおまじないと説明するけどねw
>>640 だからさ、誰がただおまじないというだけっていったの?
最初から、「printfするためのおまじない」って言ってるんだけど。
意味は後で説明する。
今入れとけ。
>>641 だから、「printfのためのおまじない」と「おまじない」は
馬鹿いわく同一なんだよw
馬鹿が言った。ログ見ろ
俺馬鹿じゃないしw
だから、printfのためのおまじない。でいいんだろ?
それにしても、そもそも
何に対して文句つけてたんだい?
世の中の誰もが、ちゃんと
「printfのためのおまじない」相当のことを
言ってるだろ?
お前が突っ込んでるのは、その「おまじない」って言葉じゃないのか?
おまじないという幼稚で残念な言葉は避けるべきだけど
>>568みたいな馬鹿に言ってるよ
printfのための宣言とおまじないは全然違うから
なんで程度問題を「根本的にわからないから全部同じ」とか言っちゃうわけ?
その情報は明らかに理解の助けになるだろ
やっぱり、おまじないって言葉に反応してるんだw
遊び心無いね。
つまらない人間だw
遊び心あろうがなかろうが、分かりやすい意味のある説明しろよ、馬鹿か
>>649 難しく考えなくていいよってことだよw
おまじない。
とりあえずスレの加速っぷりからPerlもPHPもRubyもPythonもC#もJavaも
Cには遠く及ばないということはわかった
そこで#include <stdio.h> がなくても実行できるんですけどこのおまじない意味あるんですか?
とかいう奴が出てきて話をややこしくするw
メモリ破壊スタック破壊について学ぶ良い機会
Hello Worldの時点でメモリ破壊?早すぎるよ
Visual C++だとstdio.hをインクルードしなくてもコンパイルできたりする
たまたま動いてるだけと言われて終了だろ。アホくさ
そういう奴が勘違いして糞コード量産するんだろうな
#include <stdio.h>
int main() {
char *hello = "Hello World!";
while (1) {
printf("%c",hello++);
}
return 0;
}
奇抜なコード選手権なら (i++)["hello\n"] ぐらいの芸は見せてくれなきゃ予選落ち未満だぞ。
659 :
uy:2012/04/30(月) 19:04:13.41
俺が
>>468ちょっとつっついたらこれだよ
暴れてるのは
>>467こいつだろw
とんだ地雷を爆発させちまったようだ
いや今回のMVPはたわいもないコピペで200レス釣った
>>457
質問の意図や前提をくみ取れない糞質問
が多い。それで回答者が逆質問をしたり
悪口を言ったりする。それを前もって思
い描く力が絶望的に欠如してるに違いない。
スーパーハッカーだけが意図を理解できる。
レアなそういう神が颯爽と登場する予感。
2chが糞なのはリツイートがなくて糞コピペでスレを糞化させることしか出来ないから
で、どこを縦読み?
多
聞
回
転
地
獄
五
輪
よし、ただいま。
おまじないの続き始めようか?
Javascriptが世界を支配する日 - DQNEO起業日記
http://dqn.sakusakutto.jp/2012/04/javascript_14.html もう氏ねよこいつら。最近のウェブ屋ども頭おかしいわマジで。
JavaScriptのVMは何の言語で書かれてるの?
てめえの使ってるブラウザは何の言語で書かれてるの?
てめえの使ってるOSは、デバイスドライバは、何の言語で書かれてるの?
JavaScriptで書かれてる業務系や基幹システムどれだけあんだよ?小数点切り捨てたら0%じゃねえの?
科学技術計算は?ゲームプログラムは?コンピュータグラフィックスは?
>>666 お前はJavaScriptなしでウェブアプリを作ってろ
適材適所でしょ。
スレ伸びてるが一つも有益なレスがないというのも素晴らしいではありませんか。
さすがに
>>666には同意せざるをえない
Javascriptに限らないけど上っ面の上澄みだけしかすくえない連中がさも深海にたどり着いたかのごとく錯覚して口先三寸
どっちが上とか下とか言いたくないけどお前らのやってることは本質じゃないだろって
たまたま時代が求めてるものに合致してるから注目されてるだけで5年も経てば価値無くなるファーストフード的な技術だよ
10年前にPerlCGIで天下取りましたとか言ってた連中が今なにしてるか
新しいものは何にも生み出せずにただ過去の遺産とコミュニティにしがみついてるだけの老害化
JavaScriptも完全に同じ末路を辿る
LLで生き残るのはPHPだけ PHPこそ本質
異論ありますって?勝手に書き込んでろ読まないから
ひどい自演を見た
自演とか糞くだらねえことするわけないだろカスが 匿名で自演して誰が得するんだよゴミが
「うわー666さんってやっぱり凄いわ!」とかなるんか?アホか そういう思考回路がもう既にヤバいって言ってんだよ
言語は何だっていいんだけどよ、泣きそうになるぐらいの難問難題に果敢に挑戦したこととか無いだろ?
くっだらねー上っ面のスクリプト書いて「モダンです」とか言っちゃってるわけ?やばいだろそれ モダンて 何だよそれ そんなもんねーよ
「今日は〜〜なアルゴリズムを勉強しました」とかお前それ情報系の学部生だったら1年生で学ぶようなもんじゃねーかと 何ブログに書いちゃってるんだと 笑われてんぞと
「世界を驚かせるような物作りをしたい」とか大きな事を言う前に当たり前のことをもっと勉強しろよ
コードの書き方なんてどうでもいいんだよモダンですとか言ってる場合じゃないだろ
フロンティア見た事ねーだろ フロンティアが視野に入って初めて世界が驚かせる物作りに挑む権利が与えられるんだよ
フロンティアに達するどころかフロンティアが視野に入るどころかフロンティアの概念すらも認識できないコード書きに何が出来るんだっての
はてなブックマーカーに賞賛されて悦に入ってるようなミジンコが偉そうに肩で風切って歩いてんじゃねーよ
この似非フロンティア気取り糞LL野郎共が
別に俺のことをキチガイ扱いしてくれて大いに結構 別に俺の腹は痛まない
それでお前らの気が済むんなら大いにキチガイ認定してくれ
でもな、お前ら今20代か30代なんだろ つーことはあと30年近くは仕事しなきゃいかんわけだ
今のお前の技術でこれから30年もやっていけるのか?無理だろ 絶対無理だろ 無理
30年前と今を比較してみろよ 別次元だろ?別次元の進化を遂げて今があるだろ?
それと同じだけの進化が30年続くわけだ さてお前の30年後は何者だ?ゴミだろ ゴミ
なぜお前らの30年後がゴミで俺の30年後は輝けるリタイヤかとわかるか?
俺はいつまでたっても色あせない本質を学び、フロンティアに挑戦し続けてるからだよ
お前らみたいに2chやらブログやらはてなブックマークやら糞LLコミュニティやらで悦に浸るような人種じゃねーんだよ俺は
ほんの少しでも危機感抱いたんなら明日からでも真面目に勉強しろやゴミ 千里の道も一歩からだ
Rubyはモダン
クスクス
>>671 反論を簡潔に書く能力もないのか?
ファーストフードではなくファストフードだろ、おっさん
>>461だけど、
>>462に少し癒やされたわ
おまじないって時と場合で使っていいと思うんだけど
魔法か何かだと認識してるような人を最近見かけるから言いづらいなぁと思う
自分で調べられない人たちって意味ね
悪習は言い過ぎたかもしれないと少し反省した
おまじないって強調するのは悪習
もっと妥当な訳語は無かったのかとは思う
>>679 一度に全部説明するのは無理だから、
「これは今の本題ではない」という趣旨の説明が必要になるんだろう
とりあえずはmainの中にフォーカスしたいわけだから
そもそも「おまじない」相当のものが多い言語は
プログラミング入門には向かんのかもしれんね
そういう点で、少なくとも教える側としては、
Rubyは楽だという話を聞いたことがある。print と書けば print される
同様にそういう意味でPerlやPythonみたいなスクリプト言語は悪くないのかも
php()
だがPHPてめーはダメだ、という流れだなw
おまじない
↓
決まり文句、常套句
>>681 rubyは学習コスト高いだろ。printと書けるだけで楽とかw
結局おまじないとか言ってる奴ってこういう無知で馬鹿な奴なんだよなあ
>>685 そんなに「おまじいない」の
一言で頭に来ちゃいましたか?w
間違ったことを言ってるから指摘してやってるだけだが
自分が間違ってるけどな
ちなみにRubyのどのへんが学習コスト高いん?
28 名前:デフォルトの名無しさん[sage] 投稿日:2012/02/24(金) 18:42:19.06
>>23 Rubyのパーサは複雑過ぎて意味分からん世界に突入してるな
->x,y{x+y}
->(x,y){x+y}
->x,y {x+y}
->(x,y) {x+y}
-> x,y{x+y}
-> (x,y){x+y} # これだけ syntax error
#includeを説明するほうが100倍楽
>>690 文法の複雑さと言語習得の複雑さは直接関連しない
例えばCommon Lispの文法はS式だからLL(1)に収まるはずだが、
アレを簡単な言語だと言うプログラマはほとんどいないだろう
>>690 そんな式はパーサにエラー吐かせようとしない限り誰も書かないもの
何も理解せずに使うべきというお前の考えからしたらそうなんだろうね
>>692 意味が分かれば良いのなら#includeの意味を教えればいいだけだがw
おまじないで成り立つ言語が簡単だと言う奴はいないだろうw
Lispの説明はシンプルだろ。不便があるとすればそれは機能面の制約のせいであって
rubyがゴチャゴチャしてて意味不明なのとは別の問題
便利な機能があるのは結構だが、訳も分からず使わせるのは論外
>>695 「おまじない」というのは、もちろん最終的にはその意味を理解する前提の説明
ただし一度に教えるのは無理だから、
現時点ではこう書いてねっていう意味
一方で、そもそも「おまじない」がない/少ない言語なら
そういうステップを踏む必要がないよねっていう話
「頭から順番に実行されます」のどこが「訳も分からず使わせる」機能ということになるんだろう。
なんでそう書くのか一言言えばいいだけだろ
断固として拒否る意味が分からんw
C言語の場合、教える側が、宣言と定義の区別がろくにできてない場合があるからなぁw
経験上、初出のワードを簡単にでも説明しないで誤魔化してる奴は糞
//おまじない(下の行は削除しないでください)
//こうすると何故かうまく動く
構造化されてる言語について、完全に隠れ切ってる部分を最初に説明する必要はないが
表に出てしまってる部分の意味くらい最初から言え
構造化プログラミングの意味を取り違えてないか?
何のこと?ただ理解のために、常識的なレベルで説明をしろという話だが
「常識的」を「俺様の納得する」と読み替えればしっくりくる、という典型だな
誰も納得しないモヤモヤおまじないよりマシだろ
includeがなくても、コンパイラが知的に解決してくれれば済む話
したまえ
714 :
uy:2012/05/01(火) 17:12:18.58
>>690 それ
-> (x,y){x+y}
↑ ここの>と(の間の半角スペースがダメなんだろ
俺もたまに半角スペース無意識のうちに入れたりするからシンタックスエラーくらうよ
Cとかでは、括弧が離れたくらいじゃエラーにならなかったのに
->x,y{x+y}
->(x,y){x+y}
->x,y {x+y}
->(x,y) {x+y}
-> x,y{x+y}
この5つは何をするもの?
&#160;って何
716 :
uy:2012/05/01(火) 17:50:03.55
ラムダだろ
lambda do | x , y |
x + y
end
の別記法
&#160;は空白じゃね
全部空白NGなら一貫性あるのに
-> (x,y){x+y}
だけエラーだからバグっぽく見えて印象悪い
irbに入力して試せるものではない?
Rubyはよく分からん
719 :
uy:2012/05/02(水) 00:39:38.89
てめーはRubyの前にラムダ、クロージャからだろカスゴミ初心者
p ->(x,y) {x+y}.call 4 , 5
マジかよ。(ラムダ式)(引数)じゃねえのかよ
721 :
uy:2012/05/02(水) 00:57:34.80
rubyがpython追い抜いて国際規格化された時点で
ruby使ってない奴ってプログラマですらないから
じゃ勝組みってこと?
>>717 バグでしょ
そんな記述をする人がいないので問題にならないだけで
ちゃんとバグレポートしないと放置されそう
プログラマじゃないならプログラム書き
国際規格化されただけでそんな台詞言えるなら、ISLispはどうなる。
ANSI Cmmon Lisp 準拠のほうがまだ使われてるぞ。
GNU Ruby
Groovy
uyは人ですら無いな。うんこ。
そのコテNGだわ。レス番飛んでるのそれなんだな
730 :
uy:2012/05/02(水) 13:43:26.63
asso
>>723 ->x,y{x+y}
->\
x,y{x+y}
->(x,y){x+y}
->\
(x,y){x+y} # error
こんなんでもしんたっくすえらーでた
バグかもなこれ
NGに登録したらすっきりした。便所で流した時の気分。
逆にPerlとかは国際規格とかくそくらえと思ってるわけだが
>>720 変数とメソッドの名前空間が別なのが大きな原因です
CommonLispとSchemeの違いみたいなものです
あと、メソッド呼び出し括弧の省略が出来るのも影響してます
注:Ruby以外はよく知りません、ググっただけなので間違ってるかも
Ruby
ラムダ式.call(引数) または ラムダ式[引数] またはRuby1.9で ラムダ式.(引数)
Perl5
ラムダ式->(引数) または &ラムダ式の入った変数(引数)
Java8 ?
ラムダ式.invoke(引数)
CommonLisp
(funcall ラムダ式 引数)
Python,JavaScript,PHP,Groovy,C#,C++
ラムダ式(引数)
Scheme
(ラムダ式 引数)
「下手の道具調べ」
ムダ式
燃焼系
>>734 とか言ってる奴ほど道具の不適切な使用で大怪我をする
739 :
uy:2012/05/02(水) 19:22:21.85
なんでこんなレベルの奴がこの板にいんだよ
年々レベル下がってるじゃねーかしね
俺をNGの前に初心者NGしろよバカか
uyが動揺しててワロタ
こいつが噂の糞コテuyか
>>741 まだまだ本性じゃないけどね
発作起こし始めると一目で「うわぁ…」って感じると思うよ
uyのようなゴミは相手にしたくないが今回ばかりは1〜2行目に同意
744 :
uy:2012/05/03(木) 01:01:23.38
rubyの圧勝か
745 :
uy:2012/05/03(木) 03:50:40.18
>>690これ報告したらバグだったそうなので
次のversionで対策されるんじゃね
君たちがバカにしているuyさんはまたrubyに貢献してしまいました
( ・艸・)クスッ♪( ・艸・)クスッ♪( ・艸・)クスッ♪( ・艸・)クスッ♪(。-艸-。)クスクス( ・艸・)クスッ♪( ・艸・)クスッ♪
他人のふんどし自慢乙
747 :
uy:2012/05/03(木) 14:45:34.64
二重報告されないように書き込んでやっただけ
バグ報告すらしたこと無い子はこれだから困る
他人のふんどしって知ってる?
人が見つけた不具合を自分が見つけたかのように報告したんだろ?
しかもそれをこのスレで自慢してる
いまどきふんどしをしている人なんて知らない。
NHKでよく見る。
岡山でもよく見る
ふんどしは女の子がよく似合う
美人のふんどし?
少女の締め込み姿
755 :
uy:2012/05/03(木) 17:14:01.90
uyに報告されるのがイヤなら自分で報告しにいけばいいじゃん
作業が遅いんだよアホか
それに別に金になるわけでもないのに、なんでこんなに必死なんだ
それとも、バグをたくさん見つけて報告して、
優秀なプログラマ(笑)として名前売りがたってる奴でもいたの?
それは悪いことをした
俺そういうのには興味ないから疎くてさ^^;;;
とりあえずuyが「無能な働き者」ではないこと、
redmineでの報告にメアド晒す必要はないことはわかった
低脳な怠け者
uyはうんこだって、汚物。
759 :
uy:2012/05/03(木) 23:44:46.26
社畜はGWを楽しめよ
とあるブログで見て気になった
Ruby
"a,b,c,,efg".split(/,*/) # => ["a", "b", "c", "e", "f", "g"]
Perl
split /,*/, "a,b,c,,efg"; # => ('a', 'b', 'c', 'e', 'f', 'g')
Python
re.compile(',*').split("a,b,c,,efg") # => ['a', 'b', 'c', 'efg']
Pythonは0幅は無視されるのかな
ではPHPはどうなんだろうと試してみた(PHPは使ったことないのですが)
preg_split("/,*/","a,b,c,,efg") # => array("", "a", "", "b", "", "c", "", "e", "f", "g", "")
なんだこれ?
split(",*","a,b,c,,efg"); # 不正な正規表現として使えなかった
幅が0になりえる正規表現を使うのが間違いなんだろうけど
761 :
uy:2012/05/04(金) 16:27:45.74
PHPがゴミだって事くらい、比べるまでもなくわかるでしょ
本当は、このスレの
Perl Ruby Python に肩を並べられる言語じゃないし
PHPを作ったやつの頭がおかしいんだろ
pythonてsplitは後置なのか、てっきりjoinに対応する関数があるもんだと思ってたわ
>>760 すいません、スレ違いかもしれないですけどそのブログのヒント教えてくれませんか
恥ずかしいんですがなんでそういう結果の違いになるのかわからない
どの結果が正しいと思ってる?
解決したんならいいや
>>762 あの人は良い意味でも悪い意味でも頭おかしいのは間違いないと思う
>>763 join()もsplit()も区切りを先にレシーバとして置いて
処理対象を引数として後に置く、という形で同じだと思うけど
769 :
765:2012/05/04(金) 21:51:07.92
>>766 初心者です
直感的にはPythonの結果が正しいと感じました
ただ、このもとのブログ記事?をみたところ、PerlとPythonは同じ結果で、Rubyだけ違うみたいでしたが…
もしかしたら違う記事なのかもしれません
Pythonにはreとstrにそれぞれsplit()があるよ
Perlでは文字列をバラすのにゼロ幅での空split()が利用されたりするけど
Pythonでは文字列がシークエンスなのでそういう用途のsplit()は要らない
多分ゼロ幅の扱いの差にはその辺の理由もあるんじゃないの
list("abc")で["a", "b", "c"]になるよね。よく忘れる
というか",".join("abc")で'a,b,c'になるのか。初めてこう書いた
何が起こってるのかさっぱり分からん……
Pythonの文字列はシーケンス型(リストなどと同じ)で
その要素はひとつひとつの文字なんよ
だから、イテレータを使えば一文字毎に処理を行えるし
そのまま文字列自体をjoinすると文字と文字の間に区切り文字を挟むことになる
Common Lispの文字列も文字が要素の一次元の配列だな。
Cだって同じようなもんなのかな?
777 :
uy:2012/05/05(土) 02:08:47.65
LEVEL-4
日本語文字列は?
>>775 Pythonのstrはシークエンス型だけど、リストやタプルのような他の要素の
コンテナではないし、文字を表す型も無いのでちょっと誤解を招くかも
in演算子なども、strの場合は若干特殊な動きになる
Pythonのstrは、単に配列的な演算子が定義してある型だと考えればいい
ダックタイピングのお蔭で、シークエンスに対する多くの関数が
リストやタプルと同じように利用できるのはメリット
>>778 Pythonの場合は非ASCII文字を処理するときはunicode型(Python3ではただのstr)を
使いましょうという感じ
>>760 変な事言われるんだけど。直してー。
>>> re.compile(',').split("a,b,c,,efg")
['a', 'b', 'c', '', 'efg']
>>> re.compile('*').split("a,b,c,,efg")
Traceback (most recent call last):
File "/home/tech/local/lib/python3.2/functools.py", line 176, in wrapper
result = cache[key]
KeyError: (<class 'str'>, '*', 0)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/tech/local/lib/python3.2/re.py", line 206, in compile
return _compile(pattern, flags)
File "/home/tech/local/lib/python3.2/re.py", line 255, in _compile
return _compile_typed(type(pattern), pattern, flags)
File "/home/tech/local/lib/python3.2/functools.py", line 180, in wrapper
result = user_function(*args, **kwds)
File "/home/tech/local/lib/python3.2/re.py", line 267, in _compile_typed
return sre_compile.compile(pattern, flags)
File "/home/tech/local/lib/python3.2/sre_compile.py", line 491, in compile
p = sre_parse.parse(p, flags)
File "/home/tech/local/lib/python3.2/sre_parse.py", line 692, in parse
p = _parse_sub(source, pattern, 0)
File "/home/tech/local/lib/python3.2/sre_parse.py", line 315, in _parse_sub
itemsappend(_parse(source, state))
File "/home/tech/local/lib/python3.2/sre_parse.py", line 520, in _parse
raise error("nothing to repeat")
sre_constants.error: nothing to repeat
781 :
780:2012/05/05(土) 10:42:25.22
直す必要があるのは俺の頭か。
おかしな正規表現だよって言ってるんだね。
スレ汚し失礼いたしました。
変態にしか分からない不親切なエラーだな
分かって悪かったなー。
>>780 > sre_constants.error: nothing to repeat
何も繰り返すものがないって言われてる。そして
> re.compile('*')
なにを0個以上繰り返すのか指定されてないから正規表現にコンパイルできない
言語と関係ないエラーでワロタ
コールスタックのトレースバックを見るのは変態だけだろ
変態で悪かったな!
面白がって書込みしてんじゃねー。
Pythonはウンコ言語、Javaより古い時点で枯れた技術の塊。
その上、3で仕様総入れ替えでネットに転がる情報をすべて嘘にした。
こんな言語使ってると不幸になるよ。
ちなみにRubyも不幸になるよ。
みんなでLua使おうね。
こういう奴が現れるとLuaというのが本当に糞なんだろうなと分かっちゃうね
ll言語なんて生産高める為にさくっと書くだけなんだから
あんまり拘らないで一番普及しているPHPで良いじゃん
どうせ本格的に書くならCとかJavaとかで書き直さなきゃいけないんだから。
どういう論理なのかイマイチ理解できない
PHPが普及してるのは生産性を高めるためではないだろ
Pythonのクソっプリはやっぱり特徴のタブ区切りにあると思う。
これによってソースは全角文字を使ってもいないのに文字コードを気にする必要あるというクソっプリ。
ソースをエディタから別のエディタにコピーすると大抵エラーをはく。
Webからコピーするときもいわづものがな。
生産性を超絶ダウンさせるために作られた言語。
それは言わずもがなだろ
他の言語でもタブを使うなら同じだが
タブの個数でエラーになる言語が他にあるか?
作者が『空飛ぶモンティ・パイソン』とかいう番組みながら考えた言語だったけ?
右手でスナック食いながら左手で鼻くそほじりながら作った言語は汚物と同じ。
ユーザーが多いのに互換性切り捨てたからドキュメントの少なさも随一、
というか嘘八百の情報がネットに蔓延する結果に。
いやpythonでエラーになるなら他の言語でも形成し直す必要があるだろw
タブなんてものをソースコードの仕様に入れてる時点で間違い。
テキストエディタにタブは入れられても検索ボックスにはタブは入力できないように。
正規表現か、コピペで無理やりタブを入れる必要がある。
そんな危うい文字を強制的に入れさせてる時点でエラーが出る原因を増やしてる。
例えばメモ帳では空白8個とタブの見分けが付かないからな
どのエディタを使ってようとタブや全角空白は可視化すべきだろう
> 正規表現か、コピペで無理やりタブを入れる必要がある。
おまえはしろうとか
例えばメモ帳では〜
ワロタ
Pythonがクソ過ぎてワロタか。
何言語であろうと空白は可視化してるな。
行末に空白とか嫌じゃん。
>>800 Pythonではタブは半角スペース8個として扱うのでメモ帳は問題ない
どっちかっつーと他のエディタで4タブとかになってるときが問題
スレタイの4つ言語のうち、オブジェクト指向なのはどれ?
RubyとPythonであってますか?
PHP5のオブジェクト指向は中途半端だとどこかで見ました。
PHPはマルチスレッド対応していない、と見てやる気なくなったんだけど
Perl, Python, Rubyはマルチスレッド対応してますか?
>タブは半角スペース8個として扱う
それはスクリプトの実装側が変換してるだけだろ。
空白8個じゃエラーをはくソフトばかりだ。
ちなみにPythonではスペース4個でインデントするのが一般的なので
(ハード)タブがどうとかいう問題は普通おこりますん
Pythonでひとまとまりのデータ作りたいからクラス調べてみたら、
インスタンス変数宣言せずにself変数を作ってそこに放り込んでいくやりかたなんだな。
JavaScriptのオブジェクト指向みたいなプロトタイプなところが結構あるのね。
Rubyはインスタンス変数があるから結構なオブジェクト指向を実装してるんだな。
まぁ、さっさとプログラミングしたい人間にとって、
完全なオブジェクト指向がいいってわけでもないが。
完全不完全じゃないだろ。
プロトタイプ指向とクラス指向というか。
ていうかPythonってプロトタイプ指向だっけ?
クラスとメソッドはしっかり宣言してるからプロトタイプじゃないけど、
インスタンス変数は定義しないからプロトタイプっぽいなと思っただけ。
といってもRubyも@をselfにすれば変わらないか。
>>811 Rubyの場合は公開フィールドを持たない(カプセル化の強制)ようにした代わりに
メソッドという「何でもオブジェクト」ではない例外が出ちゃってるんだけどね
813 :
デフォルトの名無しさん:2012/05/06(日) 20:08:18.31
Smalltalkだと制御構造も ifTrue: などのメッセージだったりする。
>>806 > スレタイの4つ言語のうち、オブジェクト指向なのはどれ?
> RubyとPythonであってますか?
> PHP5のオブジェクト指向は中途半端だとどこかで見ました。
オブジェクト指向に定義はありません。
なので中途半端なオブジェクト指向=オブジェクト指向です。
なのでPHP5(PHP4も)はオブジェクト指向言語です。
そしてPerlも標準モジュールにもオブジェクト指向の流儀の
モジュールが入っているので、こちらもオブジェクト指向です。
つまり、Perl、PHP、Ruby、Python、全部オブジェクト指向ですね。
> PHPはマルチスレッド対応していない、と見てやる気なくなったんだけど
> Perl, Python, Rubyはマルチスレッド対応してますか?
PHPはマルチスレッドはないけれどforkはありますよ
http://php.net/manual/ja/function.pcntl-fork.php
>>812 Rubyにはちゃんとmethodクラスがある
ただし文法上自然に取り扱えないので、
ファーストクラスとは言えないんじゃねって話がある
(それで困るケースはかなり珍しいはずではあるけど……)
ところでエディタが命のPythonさんにぴったりの良いエディタは無いですか?
インタープリタをインストールしないで補完機能が使えるものを探してます。
IDE使うならJavaかC#やれよw
Java使えるならJavaにしたいけど、Pythonを強要されてるのだからしょうがないじゃないですか。
エディタ調べてもどこもかしこもインタープリタをインストールしろって、それくらい組み込めよと小一時間
それくらいインストールしろよと
だってJavaや.Netならプログラミング以外でも使う機会があるけど、Pythonだぜ?
ブラウザにPythonアドオンが登場して、JavaとFlashとSilverLightを打倒したらいれてやる。
え、普通に電卓替わりに使うだろ
>>820 別にいれなくていいよ。ずっとJavaや.NETやってなよ
勉強して損する言語の代表格:Python
Pythonを批判してる人間には
>>816みたいな化石も含まれるのか、ゾッとするね
俺のどこが化石なんだよ!
Python使いたくないのにPythonを強要されてる被害者なんだぞ!
>>824 > おもいっきり下降線たどってるやんw
その下にグラフありますけど見ましたか?
見てるわけ無いかw
「オブジェクト指向に定義は無い」とか言っている奴は二種類に大別できる。
先達の考えをあえて黙殺して引用せずにオレ定義を前面に押し出そうとする
例えば「オブジェクト指向入門」のメイヤーみたいな野心家と、たんに体系的
文献検索ができない and/or 自分が知っていること以外は存在しないことに
しちゃう普通に残念な奴。
>>820 chrome上でPythonShellが実行できるプラグインが既にあるよ
最近かなりのアプリでPythonバインディングを見かけるし
といってもPythonの肩をもつ気はないが
Perlの創始者のotsuneという人が日本人だと聞きました
本当ですか?本当ならなぜRubyのマツモトヒロユキさんレベルに有名ではないのでしょうか
あまり表に出るのを好まないタイプなのでしょうか
要出典
>>833 Perlの生みの親Dan Kogai先生とjcode.pmの生みの親Larry Wallさんに誤れ
おつぼねってだれ?
今PythonやPHPを最初に作った奴の名前をお前ら言えるか?
言えないだろう
…それでいいんだよ。特定の開発者の名前がおもいつくような言語はろくなことがねぇ。
jcode.plの歌
Guidoと松下幸之助ぐらい常識だろう
今はもう誰もCらねーよハゲが
>>841「Sinatraはまともじゃないクズframework」
>>841 ・互換性問題の糞さ
・タブ仕様の糞さ
などの糞過ぎる仕様で皆敬遠してるんだろ。Python
だいたいプログラミング初心者はメモ帳でプログラミングするのに、
メモ帳じゃプログラミングできない時点で誰もやりたがらないよPythonなんて。
Javaの修飾子と型をなくして、配列をリストか連想配列にして
演算子を拡張すれば夢のLLができるんじゃないかと思うんだが。
なんでプログラミング哲学なんて割り込んで糞仕様をどんどん付けてくかね。
Groovy、お前に言ってんだよ。
>>844 メモ帳でプログラミングしてるようなバカを排除できるなら
Pythonなおさら素晴らしいな
>>843 Rubyの実行速度の遅さのほうが敬遠される。
インデントなんて慣れればどうってことないと思う。
仕様のシンプルさも手伝ってPythonのコードは読みやすいと評判のようだ。
互換性はどれもひどい。
PHPも4と5でものすごい変わって混乱を招いた。
Rubyなんか1.8と1.9で大違い。
Perlは知らない。ソースが汚すぎて論外
知らないなら語るな
>>846 Python2から3はガン無視か。釣りだけしたいなら他行け
プログラムの中身よりインデントを重視するアホ言語
PHPは
10年前のソースでもちゃんと動くという主張だったな
すぐにPythonに否定的なレスがいっぱいついたな
このスレはRuby信者とPHPerの巣窟だったの?w
>>849 括弧の1文字のために1行、2行を使うのは非効率すぎる。
括弧に対応する範囲を一瞬で把握できるしPythonは合理的。
これは真似する言語増えていくにきまってる。
>>847 Perlなんてコード汚すぎて終わった言語だろ。
MatzもPerlの読みにくさ酷評してたっけな
Perlとshell scriptはさっさと消えておk
で、糞仕様のRubyができた
めでたし、めでたし
Pythonistaがアレすぎて、どうにもPythonが好きになれない。
ふと同様の処理をRails, Django, Catalystで読み比べることがあるけど、Perlぜんぜん良いよ。
まぁ、こういう人も居るということで。
驚異的なのは、Pythonを叩いてる奴が、使ったこと無くて何も知らないということw
ここでPython叩くとタブの仕様は反論するのに
互換性切り捨てについては総スルーなのが笑えるw
いくら擁護する奴らもこれだけは許せないんだなw
Pythonの互換性が批判されるが、
新しい仕様に追随することを開発者に常に喚起することで、
成果のプログラムが洗練されたものになる効果があるんだぞ
んなもん新しい言語だせよ。
といってGoもDartも大失敗だったか^^
バージョンが1違ったら互換性がなくてもいいよ。
でも0.1程度の違いで後方互換を捨ててる言語はウンコ。
またバージョンが0.1変わったら今までの苦労が無駄になる。
互換性に関してはPerlがそこそこあるかな
単に新バージョンの開発か上手く行かないから
過去仕様をそのまま拡張する方向でしか進められないだけだけど
Pythonはマップのメソッドが3になって全滅だからスカトロ言語以外になにものでもないよ。
>>860 Perlの互換性は「そこそこあるかな」ってレベルじゃないよ
5.0向けに書いたコードが5.14でも普通に動く
Perl6はどこ行ったんだ
Perlは終わった。おじいちゃん言語。
http://en.wikipedia.org/wiki/Perl_6 Perl 6 is intended to have many implementations. Backward compatibility
with earlier versions of Perl is not a goal, though a compatibility mode
is part of the specification. The design process for Perl 6 began in 2000.
Perl6にはスペックに互換性モードもあるらしい。かなり互換性重視なんだな。
でも2000年にPerl6のデザイン開始して11年以上たってもリリースできてないって
いったいどういうことなのさ。
Rubyだって、Ruby2.0って最初に言い出したのはその頃だったぞ
Perlでは5.8あたりがメジャー?
>>866 せいぜい5.10じゃね?
ディストリ標準で5.8が入ってて、今も使われてるのってRHEL v5ぐらい。
他はもうほとんど5.10以降って印象だな。
>>866 枯れた環境として5.8があって、大概は5.10以上かな
869 :
uy:2012/05/07(月) 20:03:03.21
Goは廃止され、代わりにRokuが登場する
871 :
デフォルトの名無しさん:2012/05/07(月) 20:18:08.71
Shogi じゃないのか。
Nanaだったら俺が萌え萌えのマスコットキャラを描いてやるのに
>>872 るびまの表紙をお願いします
いっそのことおっぱいそんマガジンの袋とじでもいいです
質問です
これってバグですか?
class O
attr_accessor :x
end
o = O.new
o.x = 99
o.instance_eval do
p x #=> 99
if nil
x = 2 # この記述があるとxがなぜかnilになる
end
p x #=> nil
end
875 :
uy:2012/05/07(月) 22:46:42.08
質問の意図や前提をくみ取れない糞質問
が多い。それで回答者が逆質問をしたり
悪口を言ったりする。それを前もって思
い描く力が絶望的に欠如してるに違いない。
スーパーハッカーだけが意図を理解できる。
レアなそういう神が颯爽と登場する予感。
しかたないなー俺の出番が来たか
878 :
uy:2012/05/07(月) 23:49:56.95
お前は前後のレスすら見れないのな
ヘボプログラマは観察力と注意力のかけらもないからな
Python2.7とRuby1.9ではどちらが速いのでしょうか?
882 :
uy:2012/05/08(火) 04:10:26.88
いい質問ですね
884 :
uv:2012/05/08(火) 08:52:37.21
↑バーカバーカ
↓バーカバーカ
uyはRubyの仕様も知らないくせに初心者スレでバグかどうか質問して
レスがないとキレたあげくに恩着せがましくレポだすのか。恐ろしいな。
他人が見つけた不具合を
あたかも自分が見つけたかのように報告して、
しかもそれをスレで自慢するカス野郎=uy
あたまに不具合があるのだろう
人が見つけた不具合をそいつ以外が報告するんじゃねえよ
バカか?
2ちゃんねるを見てる、ということがばれるのは憚られるし、
(正規のバグ報告場所じゃないから)2ちゃんで報告された
バグには反応しづらい。だからある意味便利な存在ではある。
だいたい、そもそも2ちゃんに書かずに報告しろカスって話。
>>888 の言ってる文句は、全く反対。
rubyもrubyプログラマもバグりまくりってことだ
891 :
uy:2012/05/08(火) 15:57:23.69
>>885 >>882これが仕様だから正しい動作なんだ
とは誰も思いたくないだろ
俺様と逆説を唱えたいばかりに無理すんなと
こんな動作をする箇所は誰も使いたがらない
あと
>>690のこれラムダ以外でもどこかであったなぁと思ってたんだけど、今日思い出したこれだ
puts 2
puts(2)
puts(2,5)
puts (2)
puts (2,5) # syntax error
まぁ似たようなエラーだから一緒に修正されるかもしれないので少し待つけど
バトルロワイヤルじゃなくて、ここはバトルロワイアルにして欲しいところ。
この流れだとLLハローワークでいい気もする
間を取ってLLアウトローにしておいてやる
独り言
初心者がはまるRubyのややこしいところ
・メソッドコールの括弧省略時の挙動
p( (1)+2 ) #=> 3
p (1)+2 #=> 3
p(1)+2 #=> 表示は1 式全体の値は3
p(1) + 2 #=> 表示は1 式全体の値は3
(2,5) #=> syntax error
p( (2,5) ) #=> syntax error
p (2,5) #=> syntax error
>>891 ぷ。uyが仕様を知らなかったってのはどうやら本当らしいな。
仕様が気にくわないなら最初からそう書くだろうしな。
よしまねしてみる
独り言
誰もはまらないPythonの落とし穴
>>> x = y = 1
>>> x, y
(1, 1)
>>> x = (y = 1)
File "<stdin>", line 1
x = (y = 1)
^
SyntaxError: invalid syntax
なんでRubyの仕様の理解もあやしいレベルの奴がこの板にいんだよ
年々レベル下がってるじゃねーかしね
そういう煽りはいただけない
糞言語Rubyの糞仕様を糞理解してどうすんの
ゴミカス構文はちゃんとピックアップして「プギャーーーーーーww」
してやらないといけないと思うよ
その構文に不満が無いものと思われるから
>>895 それ多分
-> (a,b){}
と同じじゃね?
俺の予想では、一緒に直される
902 :
uy:2012/05/08(火) 20:28:26.35
ただ->do~endでのラムダ宣言は
↓のケースでもエラー
def a hs
hs[:func].call
end
a func:->do
[1,2,3].map { | o |
puts o
}
# ↓ error
[1,2,3].map do | o |
puts o
end
end
->do 〜 endではなく ->{ }にすれば一応エラーはでなくなる
俺様が思うに
お前らも何か見つけたらちゃんと「チョッギプルリリィィィlwwww」してやれと、俺様は思う
この言語が組み込みに使われてハードウェア上で動くのは流石にRuby信者の俺としても怖いもの
903 :
uy:2012/05/08(火) 20:30:19.33
まぁこれも一緒に直されるよね?と思ってるからしばらく様子見をしているもの
バグ報告しにいきたいなら勝手に行けばいいと思うよ
勿論二重報告にならないように報告した旨はここに書くこと
「バグ見つけた」→「仕様だ。それくらいのことも理解してないのか、馬鹿だなお前」
本当にRubyはゴミだな
907 :
uy:2012/05/08(火) 20:40:42.34
>>905 いやそこの情報はもう更新されないし、既に動作が違う古いものも含まれてるからさ
もう一度言っておく。
言語のメジャーバージョン番号が同じ間は後方互換性を持たせなければならない。
はいはいにょろろにょろろ
910 :
デフォルトの名無しさん:2012/05/08(火) 20:57:21.77
return next break
Proc.new メソッドを抜ける 手続きオブジェクトを抜ける 例外が発生する
proc 手続きオブジェクトを抜ける 手続きオブジェクトを抜ける 手続きオブジェクトを抜ける
lambda 手続きオブジェクトを抜ける 手続きオブジェクトを抜ける 手続きオブジェクトを抜ける
イテレータ メソッドを抜ける 手続きオブジェクトを抜ける メソッドを抜ける
こんな言語ですし
ちなみに
-> と lambda は同じなんだっけ
>>908 (メジャー)バージョン番号の決め方なんて恣意的なので、
なんの意味もない主張です、で終了。
ホスティングやってんだけど、
PHPの?-sと?-dで酷い目に遭いました。
CGIで動かしてたってのも悪かったんだけど
外部のPHPコード実行できちゃうとかそりゃないでしょorz
このスレ、次からはC#も入れるべきだと思う。
C#4.0からはDyanamicな型も使える。
使ってない人にはあまり知られてないけど、Monoを
使うとLinux環境でも使える。
実行スピードはJavaと同じくらいでかなり高速。
LLとかいうほとんど意味のない分類でスレ立てするより
Web apps用の言語というくくりのほうがおもしろい。
PythonもStaticな型にもできるハイブリッドな言語だし
LLという分類もはっきりしたものじゃない。
LLはJavaやC#を排除できるぐらいには意味のある分類だと思います
HTMLも含めるんだよな
916 :
uy:2012/05/08(火) 22:03:07.40
>>914 実際そうだと思う
処理の重い部分はCで書くとか、
Cでかかれたライブラリ部分に頼る形にすれば
LLで速度は問題にならない
最初から最後までLLだけで書くことしか出来ない奴が速度速度騒ぎたてる
C#信者が目に余るほどウザイ
(関係のない)至る所に現れ宣伝してる
>>914 じゃぁなんでStaticにしてコンパイルもできるPythonが
入っているの?
PythonがOKでC#(4.0以上)がだめな理由がないよ
PythonはいいけどC#がだめってのは単なる感情論でしょ
あいまいな定義のLLに固執するよりも、
Web apps開発に使える言語をテーマにしたほうが
はるかに有意義でしょうに
>>916 書くのが楽だからPHPやらRuby使ってるわけでしょ?
二つの言語で開発したら開発生産性がガタ落ちじゃないか。
それとも速く実行できる言語はだめっていうナンセンスなスレにしたいの?
>>918 よくわかんないけどあなたが好きなスレ立ててそっちで議論すればいいと思うよ
ここはLLがだいたいどんなものか察しが付く人が来るところ
コンパイル必要でSystem.Console.WriteLineと書かせる言語をLLと考える人は少ないだろう
ところでPythonのStaticにしてコンパイルって実際にどの処理系のこと?
920 :
uy:2012/05/08(火) 22:42:40.38
>>918 >書くのが楽だからPHPやらRuby使ってるわけでしょ?
PHPは使わないけど。
>二つの言語で開発したら開発生産性がガタ落ちじゃないか。
そもそもスクリプト言語の標準関数の多くはCで実装されてるわけだけどwww
君の見えないところでは当たり前のようにCとLLは連携されてるよ
921 :
uy:2012/05/08(火) 22:51:55.51
しにます すみませんでした
C#は (頭脳にとって) lightweight だと思うから、ぜひ参戦してほしい。
けど Java、おまえはだめだ。きさまはheavyすぎる。
923 :
デフォルトの名無しさん:2012/05/09(水) 00:23:14.02
>>1のLLの定義は、日本語のWikiにだれかが書いただけで
コンセンサスがあるわけじゃない。
http://en.wikipedia.org/wiki/Lightweight_programming_language 英語のWikiには、
>>1のような定義はないよ
A lightweight programming language is one that is designed to have
very small memory footprint, is easy to implement (important when
porting a language), and/or has minimalist syntax and features.
Examples of lightweight languages
C may be said to be lightweight, as its hardware assumptions are
minimal (it is used to program microcontrollers, for example)
Lua is embedded in many applications, like games, to provide runtime scripting capabilities
Forth
Io
Squirrel
newLisp
メモリ使用量の少ない言語、と書かれている。
C言語もLightweight programming languageだと書かれてる。
LLの定義が間違ってた、もしくはコンセンサスが存在しない。
ということで、次からはスレタイ変更は決定だな
924 :
uy:2012/05/09(水) 00:25:21.07
俺としてはPHPってプログラミング言語じゃないんだし
次からはPErl RUb PYthonの3言語にすればいいんじゃねって思ってた
オレオレ定義。
>>923 > This article does not cite any references or sources.
日本ではLL魂とかLL Magazineなんてムックも出てたしそれなりにコンセンサスがあるかと。
>>926 スクリプト言語は、「実行時には重い」から、ぜんぜんLightweightではないし
どっちかというと英語wikiの用語解説のが合ってると思う。
雑誌書いてる奴らが勘違いして使い始めたせいで、日本限定で
誤った解釈が広がってしまったんじゃないか?
まぁどっちが合ってるかはどうでもいいやw
Lightweightの判断基準がないのに、重いだの軽いだの言っててもしょうがないでしょ
Webアプリ開発用の言語ならなんでもOKのスレにしたほうが楽しいし
スレタイとテンプレは変えようぜ
スレタイに変な【】つけているせいで、4つの言語限定みたいになっちゃってる。
PerlはFramwork使った開発であんまり使われてないようだし、
PHP, Ruby, Pythonの3つだけで比較議論しててもね・・・
日本限定だから間違ってる、という発想が間違ってる
何を言ってるんだ
俺が法律だ
Web開発の話はWebprog板へ行けよ。
ちゅーか、制限外したら、またC/C++のスレが増えるだけ。
931 :
uy:2012/05/09(水) 09:26:54.31
このままでいいよ
加えるとしたらjs
>>927 そもそもLLって和製英語なんだよ
その他の国では文字通り訳すからC言語とかの話になるって話で
RubyとPythonとかいうウンコ言語外して
Lua入れようぜ。
和製英語を作った人と
輸出した人が悪い
>>930 え?Web開発したいからスクリプト言語扱ってるんでしょ?
特にPHPなんて実質、WEBのサーバーサイド専用だし
RubyもPerlもWebアプリ用途がメイン。
Web用途がだめならこのスレ自体が削除対象だろw
>>932 言葉の意味が間違って認識されてしまっているから、どうにもならないなw
phpを毛嫌いするやつの主張がわからないな。
一応あれも「言語」だし、そいつで開発したシステムパフォーマンスを軽く動作させようと思えば
RubyやPythonと変わらない労力で軽くできるがな、そのために関数やらライブラリやらフレームワークがたくさんあんだろ。
先人の努力の賜物だ。
こうして見ると、phpが重たいだのほざいてるシッタカは、ロクな開発経験がないんだろうな。
そうね。
デフォルトでグローバル名前空間になんでもかんでも山のようにブチまけられている状態を、
全くヤバいと思わないバカがそういう風に思うんだろうね。
PHPでは、グローバルなガラクタ関数が大量にばら撒かれてるんだよな
何のポリシーもなく
LLは意味のない単語でしたってことで、
次スレのスレタイ案考えようぜ
「最強のWebアプリケーション開発言語は? 22」
「最強のWebアプリケーション開発言語 22」
でどうか
異論は認める。
>>933 Luaもあってもいいんじゃないか。
最強がどうとか言ってるなら出場選手を4言語に限定する必要はないわけだ
むしろ汎用プログラミング言語ではないPHPを除くべきだと思う。
>>941 スレと板の違いもわからないようだが、
Web用を除外するなら、PHP入ってるのがおかしいだろ
Rubyだってほとんどの人間がRails用に使ってる
PHPはCommand Line Interface(CLI)版があるから、
汎用言語として扱ってもいいと思ってる。
除いてもいいけどさ。
どうせ次スレ立っちゃってるし、その次スレを立てる頃にはみんな忘れてるさw
PHPでローカルのファイルや文字列を処理するプログラムを書いたりもするよ
PHP の GUI もあるよ
権威好きな方に。MITだよー。
http://ll1.ai.mit.edu/cfp.html > LL1: Lightweight Languages Workshop
> MIT Artificial Intelligence Lab, Cambridge MA
> Saturday, November 17, 2001
> Call for Participation
> We use the term "lightweight languages" to describe some of the common features
> of these new languages. The term "lightweight" refers not to actual functionality,
> but to the idea that these languages are easy to acquire, learn, and use.
> Examples that would fall into this category include Perl, Python, Ruby, Scheme (and scsh), and Curl.
PythonのStaticなんちゃらはどうなったんだよまったく
>>939 まったく性質の異なるスレをナンバリング引き継ぎで立てるのはおかしい
やりたいなら新スレをWebプログラミング板で立てればいい
Wikiとか表記する時点でド素人確定
>>942 1.4系の頃からRuby使ってるがRails使ったことないな
俺もRubyでRails使ったこと無い
955 :
uy:2012/05/09(水) 20:58:17.01
無料HPスペースでRuby使えるサーバーが少ないのと
趣味で何かCGI作る程度じゃフレームワーク使うまでもない
つうかWikipediaをソースにする奴ってなんなの?
Wikipediaにそう書いてあるからってネタで言ってるんだよね?
将来性の指標
JavaScript ☆☆☆☆☆ クライアントサイドで動く唯一のLL 糞言語仕様ではあるが将来性はピカイチ
Python ☆☆☆☆☆ numpy,scipyに底支えされる計算科学系分野における絶大なシェア
可読性が高くアルゴリズム教科書への高頻度採用 LLの王様になることが確実
PHP ☆☆☆ web土方御用達言語としてのシェアはJavascriptの躍進で下落する事が予想される
Ruby ☆☆ Railsの影響力低下、またPythonの躍進によりシェア伸び悩み
Perl ☆ 歴史的な役割を終えた言語 今後Perlで開発継続することがリスクとなって採用企業の足枷となる
958 :
uy:2012/05/09(水) 22:21:54.93
ボケがスレタイからRuby抜いたから立て直してきて
960 :
uy:2012/05/09(水) 23:25:56.89
ふざけた情報操作しあってる2ch
別にこんな場所でのまともな話し合いは期待していない
手を引こう
955で珍しくそれなりにマトモなことを言ったと思ったら
みんな地震が来るまではこう言っていたんです
なぁ冗談だろ?
ぼくがかんがえたさいきょうのげんご
>>959 そうだな
俺はこれからPL/SQL一本でいくぜ
>>948 わざわざwinアプリをphpで…
何のメリットも無いのに開発者がphpしか使えないからやってるんだろうな
こんなんだからペチパーって馬鹿にされんだよ
言語について語ってるだけで何も作れない奴よりマシ
967 :
uy:2012/05/10(木) 15:28:52.95
PHPやってる奴ってなんでプログラミング言語覚えないのかよくわからない
プログラミング言語でプログラミングしたほうがプログラムは作りやすいのに
とか言う奴はそもそも何も使いこなせないので、なにひとつ作れない。
uyはチュートリアル止まりだろ
970 :
uy:2012/05/10(木) 16:03:26.12
社畜はいいよな
沢山ソフトウェア作れて
外すならPHPだろゴルァ
不要な言語はPHPとRuby
俺も、PHPは実践に特化した”道具”だから除外した方がいいと思う。
実際、シェアと実現力は下々の”言語”(Perl,Python,Ruby)を上回っているので勝負にならない、
(Perl,Python,Ruby)のみでドングリの背比べをした方がいいと思う。
実現力つったってどうせwordpressぐらいしか使ってねーんだろ?w
がんばってcakephp
確かに、関数名や引数の順序の汚さではPHPがダントツだな
だからサブタイトルに言語名入れないほうがいいったんだよ
外されたRuby派はおもしろくないんじゃないか?
スレタイ変更の話がでたとたんにまだログ残っていたのに
強引に先のスレたてやがったし、
>>1がクソすぎる。
Ruby派つっても微々たるもんだろ
ノイジー・マイノリティの怨みは恐ろしいぞ
所詮マイノリティだから口だけ
メジャーになれない北朝鮮と同じ
980 :
uy:2012/05/10(木) 18:53:47.52
スレ立てられる奴いるならスレタイ正して立てろやカス
WebProg板でよければ近いうちに立てるかも
ここの住人、結局スクリプト言語でWebアプリ開発してるんでしょ?
だったら、フレームワークネタもOKのスレのがおもしろいかなと。
>>981 いや全くWebやってない人間も居るよ?
Webアプリ開発はスクリプト言語でやることのひとつにすぎないので
984 :
uy:2012/05/11(金) 01:28:04.34
そもそも、WEBアプリ開発しか出来ないのはPHPだけじゃね
他の3言語は、WEB以外での用途のほうが広い
見せてやれよ uy ! PHPの連中に本物の汎用言語の実力を、得意のRubyで!
uy ならやれる! 一週間以内にきっと見せてくれる!
トレイト
PHP 5.4.0 以降では、コードを再利用するための「トレイト」という仕組みが導入されました。
トレイトは、PHP のような単一継承言語でコードを再利用するための仕組みのひとつです。
トレイトは、単一継承の制約を減らすために作られたもので、 いくつかのメソッド群を異なるクラス階層にある
独立したクラスで再利用できるようにします。 トレイトとクラスを組み合わせた構文は複雑さを軽減させてくれ、
多重継承や Mixin に関連するありがちな問題を回避することもできます。
トレイトはクラスと似ていますが、トレイトは単にいくつかの機能をまとめるためだけのものです。
トレイト自身のインスタンスを作成することはできません。 昔ながらの継承に機能を加えて、
振る舞いを水平方向で構成できるようになります。 つまり、継承しなくてもクラスのメンバーに追加できるようになります。
例1 トレイトの例
<?php
trait ezcReflectionReturnInfo {
function getReturnType() { /*1*/ }
function getReturnDescription() { /*2*/ }
}
class ezcReflectionMethod extends ReflectionMethod {
use ezcReflectionReturnInfo;
/* ... */
}
class ezcReflectionFunction extends ReflectionFunction {
use ezcReflectionReturnInfo;
/* ... */
}
?>
修士出てscipy触らなくなったら、pythonとかどうでもよくなったわ
前に触った感覚だと、scipyの型はlistなのかnumpy.arrayなのか謎過ぎてきて、
コンパイル時にエラー吐いてくれた boost + c++の方がマシな気がしたぞ
>>956 javascriptのシェアはhtml5の普及後には新しい言語に駆逐されてる希ガス
s/魔法少女/hacker/g
s/QB/ESR/g
ほむらちゃん、過去に戻れるって言ってたよね。
こんな終わり方にならないよう、歴史を変えられるって
だからね、お願いがあるの
ESRに騙される前の馬鹿なわたしに公務員試験を受けさせてあげてくれないかな?
991 :
uy:2012/05/11(金) 05:59:23.81
ドカタwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
|//'/::::,,. --‐''" ,,. --《:::::ヽ
レ'´ ヽ、_,. --‐ 。 ̄,、::::。l')、:/――- 、、
ヽ l、o ヽ!゚:ヽ!,.--‐ヽ':::::::::... ヽ、
,〉_,,--=/´ ヽ、 ` ヽ、、 ヽ. ヽ
///./ l' ヽヽ、 .. ヽ::::ヽヽ
/ ./ / .l, 、 .....ヽヽ、 .ヽ:ヽ::ヽ:ヽヽ
//./ .// ::l l .::ヽ\:、___、..`ヽ、ヽ:lヽヽl、
l//./ .ィ .l .l::ト .l :.:::ヽ-'"ヽ,,,,,_ヽ、、lヽl_ヽl::ヽl
/.: l|.::l:| l,.-‐''''' 、 :::::::ヽ/ヘf'´Ч'/l:、ヽl;ノハ:l:::l.l ,,、,.-,
,,.--‐イ '´|:. .ハ ト、ヘ ,,.r''fro、-、::::) 弋-ノl' l:::ヽ'くl(::ノ':r、ヽ__/.〉=タ、
'´⌒´´ l::l..l ヽl、〉、:ヾ、弋、) '´ "" l :::l:::`l::`:/:l、ヽ:ヽ// lヽ
ヽ:ヽヽ:lノl:l:`:ヽ "" ' /:l /:::::l//: /l lヽ、 Y‐ヽ ゝ、ヽ、
`)ヽl:/ ll :::: ヽ、 ー' /l l:: :: /l': l/ ヽ//'l `ヽ
(/ノ'´ :ノ ::::::l/``ニ ‐- ´ /l:/ : ::: l::l、 l /'-'_,,.=´ヽ ζ
‐ 、____ ,,,. -‐ '´,.-/ : ノ二、/:_l l::/ ::: l'-‐ヽ:l / ::r-‐'"´
,,. -―-、、 ,l´./ :::::: /=ニ-'''"´ノ / ::: / :::::::`| 〈 ヽl´
フ´=´‐ ,,.-‐r(‐/r'´__,. ,./ ,.-‐=‐::/::::::: :::::| ``l‐ゝ-- 、_
/'"´ :::/::::::::::::r-//,.- / / /:::/ :::::| |:、 `ヽ)
/´ ,.-,.ィ=l.l:::,/'''フ"〉:〈ヽ'くニl'´ /,.,.// ::::| :|ヽ ,/'´
..r'´ ,.-,-''l'_.ゝ-''´:::/:l:l:::lヽl:、 `l :::://.//:l'::::: ::/:| |ヽヽ `""ヽ、
´ // / ::::::::.;./::::l::l:::l : : ヽ:::ヽ::l:'::::l://:ヽ、:::::.. / ::| |:::.ヽヽ
/ ア/} ∧ ,
./ / ,. へ/ }/}
r⌒ヽ{/ /::::::::::::`く /-‐ァ
´ ̄∨/`"'':ー---ム\r' ,. -────- 、
_r='===、::;;;___:::}_}、 /
,. '" |:::[l:::--:::::::::r::::::7:::::::::ア ,' 五 一 お. 先
/ , `'ー-=ニ二::;;__/_;;:::イ`ヽ. ; 月 年 前. に
, ' / /:::::::::::ヽ ':, .| 病 中 の. 言
./ / .;:::::::::::::::::}l 、 ヽ, '; .| と. 患 よ っ
/ / ' メ、_{:::::::::::::::;ハ ': '; | | は っ う て
:' | |イ んヽ、::::::::;' },.. -‐ハ } | | 呼 て に お
| ,! ハ 、_り \/ '´ん ハヽ|. , ,' | ば. い. く
|八 .|::| "" 、_rり ノ; / / | な. る. が
\..|::| ' ""∠. イノ , < い の
|人 rァ‐ 、 ,|::::::|| | 、 は
|::::::|ヽ、 、 ) ,.イ|:::::::|! ! ヽ、 _ノ
|::::::| ァム、._ イ!<|:::::::| ', ` ̄ ̄ ̄ ̄ ̄
r‐、 ,|::::::||/:::::::::r斤 |、::;::::::/、 ':、
{ |/ `!r 、 ./ |::::::|!}:::::::::{-、 ___/:::/:/:}.}>、 \
l. / // ) { 、:::|ト、:::::::| ´/:::::'i´:::::// \. ヽ
'、{ l' /`! /! l>)、ヽ::/r、イ::::::::::::ノ r‐'´ ハ ';
\ ' )、 ,:':::::::<ム )>-=ニイl// } }
`ヽ l _r7::::::::::::{/レヘハ::::::::::::::::::/´ 、 /
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ヽ、_,;:.ゝ|、____|___;;;:::-─ヽン‐r┐
くーヽ、:;___;;::-:::::::─::::'':::"´:[l:::|.
* . ';:::::::::::::i:::::::l]:::::l]::;:=、___;;:::::」、 SPELL ATTACK
::::::::::::::::::::::::::::::::::::::::/`"' ー-'--─ ''"7::::::ヽ. i `ヽ.:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
,' / ハ,__ i:::::::::i -!、ハ .',
.i ./ ,' /'´| ハ::::::ハ__ハ | i |
|. i イ /,ア;ニ;ヽ V .オ`i`i | ,ハノ 晴 耕 雨 読
|. ', i ,〈 .ト | トノ.ノ レ'!
::::::::::::::::::::::::::::::::::::::| ヽ、ヘレ| ゝ' , ,,|:::| |::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━