つまりRubyってPerlの後続じゃん?

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2012/05/05(土) 18:42:26.58
いまだにPerl使っている人ははやく移行を考えたほうがいい
2012/05/05(土) 18:43:56.37
○○の代替にしか使えないものは
オリジナルを超えられない。

普及させたければ、何かの分野で
他にとって変えられないものになれ。
3デフォルトの名無しさん
垢版 |
2012/05/05(土) 18:46:00.91
代替じゃねーよ
Perlの進化系
2012/05/05(土) 18:47:19.77
むしろPythonへ移行を考えたほうがいい。
2012/05/05(土) 18:49:02.55
普通に考えたらPythonだよねぇ。
2012/05/05(土) 18:52:31.38
rubyのCPANのようなものがperlのそれを超えていれば ね
7デフォルトの名無しさん
垢版 |
2012/05/05(土) 20:26:57.22
それはPerl使いが移行すれば速やかに解決するよ
なぜならばRubyのほうが圧倒的に優れているから
2012/05/05(土) 20:33:46.98
RubyのGEMとやらはCPANよりもアットーーーーーーー的に優れてんの?
9uy
垢版 |
2012/05/05(土) 22:19:20.25
CPANのライブラリ量が多いからといって
RubyではなくPerlを使う理由にはならないけどね

開発速度がそもそも違うんだから
2012/05/05(土) 23:07:33.68
Rubyになって開発速度が上がった話なんかあるのか?
11uy
垢版 |
2012/05/06(日) 01:15:36.81
perlとrubyを比べてるときにその発言をするなんて
2012/05/06(日) 02:24:44.67
たぶんRubyは、Perlよりおそいだろう
13uy
垢版 |
2012/05/06(日) 03:35:13.19
バカだね
14uy
垢版 |
2012/05/06(日) 03:35:40.87
バカがperlを使う
15デフォルトの名無しさん
垢版 |
2012/05/06(日) 03:36:18.89
惰性
16uy
垢版 |
2012/05/06(日) 03:37:08.83
開発速度でも実行速度でもrubyが上だった

もう勝負はついてる
2012/05/06(日) 03:39:08.35
ただひとつの利点

省略記法



そこまで使いこなせないでperlとか言ってるなら、
プログラミングで効率を出すことをあきらめたほうがよい
2012/05/06(日) 03:42:07.38
http://d.hatena.ne.jp/kwatch/20100430/1272585083

これを見れば、最速な言語は C/C++ であり、Java や Haskell や
OCaml といった静的な言語は軒並み上位に登場する。これに対し、
Ruby や Python や PHP といったスクリプトは全部下のほう (つまり遅い)。
その速度差は非常に大きく、このベンチマークで見ると Python3 や
Ruby1.9 は C/C++ の約50倍から60倍遅く、Perl は約90倍、
PHP にいたっては約130倍遅いことになる。
19デフォルトの名無しさん
垢版 |
2012/05/06(日) 03:54:29.38
Perlのいいところを最大限に活かしながら
悪いところや無駄なところを改良し
Perlに欠けていた機能を追加したものがRuby
いまやPerl自体人気がないので新規で始める人は少ない
20uy
垢版 |
2012/05/06(日) 04:49:14.36
>>18
なんで2010年データなんだよ
2年前に作られたBOTか何かかお前
21uy
垢版 |
2012/05/06(日) 04:57:33.37
PythonとPHPとRubyを正しく見比べられない奴はいるけど
流石にPerlとRubyは一目瞭然過ぎて入門書の1ページを開いただけでどんな初心者でも分かるはず
本当に一部のperl愛好家以外は見限ってるからな

今更RubyとPerlを比べる奴などもはやいない
間違って浸透したPHPをこれからRubyがどうやって駆逐していくか
RubyでJAVAや.NETを駆逐できるのか、段階はそこに行ってる

PHPは確かにマシだったんだよ、
きてぃにしか使いこなせないPerlと、
変わり者にしか使いこなせないPythonしか、CGI記述言語がなかったんだ
ちょっとその2言語は、凡人に「はい、これ使ってくださいw」って渡すには、あまりにも道具が優れすぎてて

初心者は使えなかった、だから、明らかにPerlともPythonとも劣っているPHPが
言語仕様ゴミカスでありながらも、現在一番Web言語として広く使われてる
けれどこの均衡はrubyによって崩され始めている
今後、JAVAか、js辺りが、ものすごい速度でCGI記述言語への進化をしたり、
格段に優れた言語が突如出てこない限りは、時間的にRubyが勝つようになっている
2012/05/06(日) 05:39:52.63
Rubyには強みがない。
2012/05/06(日) 05:42:25.46
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
http://www.tiobe.com/content/paperinfo/tpci/images/tpci_trends.png

1 2 C 17.555% +1.39% A
2 1 Java 17.026% -2.02% A
3 3 C++ 8.896% -0.33% A
4 8 Objective-C 8.236% +3.85% A
5 4 C# 7.348% +0.16% A
6 5 PHP 5.288% -1.30% A
7 7 (Visual) Basic 4.962% +0.28% A
8 6 Python 3.665% -1.27% A
9 10 JavaScript 2.879% +1.37% A
10 9 Perl 2.387% +0.40% A
2012/05/06(日) 05:45:02.12
Rubyは5倍も差を付けられている
PHPに追いつけるかが、将来の焦点

今は2倍差を付けられているPerlを
超すことが目標。

ばんがれ!
25uy
垢版 |
2012/05/06(日) 07:12:40.31
という事にしたいらしい
26uy
垢版 |
2012/05/06(日) 07:52:42.32
mrubyすごいなこれ
2M弱しかない
プログラム言語は軽量されているべきだ
あんまし話題になっていないけど、何気にすごいものリリースしてきたような気がする
2012/05/06(日) 08:10:29.62
> 2M弱しかない
あぁ、フロッピーディスク2枚分だな。
2012/05/06(日) 08:17:51.69
バンガロール
2012/05/06(日) 08:58:55.34
>>26
後1/4ぐらいにしないとだめだろうね。
2012/05/06(日) 14:49:16.82
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

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

                  京都大学霊長類研究所
31uy
垢版 |
2012/05/06(日) 19:33:06.20
>>29
なにがだめとか分かって無いだろお前
2012/05/06(日) 20:24:22.89
eperlが500KBぐらいでしょう?

まだまだ重い
2012/05/06(日) 20:30:58.51
でもガラクタ
2012/05/06(日) 22:14:24.16
>>26
> プログラム言語は軽量されているべきだ
以前から気になっているのだけれど、
「軽量する」という風に「○○化する」の「化」を省くのはどこかの方言なのかな?
2012/05/06(日) 22:22:31.28
つ AWK
2012/05/07(月) 00:37:15.17
モルモンがプロテスタントを超えられるはずが無いだろう。
37uy
垢版 |
2012/05/07(月) 00:53:39.59
>>34
「化」や「的」は省くことによって言葉に勢いをつける
2012/05/07(月) 00:57:44.13
>>37
さすがです
2012/05/07(月) 02:40:12.82
おれの語感としては単に入力漏れな感じなので普通の勢いにもみたない
40uy
垢版 |
2012/05/07(月) 06:18:34.32
人は歩みを止め闘いを忘れたときに老いていく
41uy
垢版 |
2012/05/07(月) 08:47:26.40
けどperlの省略記法好きなんだよなー
perl6のforイテレータでつかえる$_も素晴らしい
後置きforも良いセンス
そこだけがrubyで実装されていないのが狂おしい
もしrubyで実装されたら、俺働く
42uy
垢版 |
2012/05/07(月) 08:59:22.73
http://damako.net/perl6doc/for.html

みてみろよこのPErl6構文

最高過ぎるだろ
しかも・・・

"test".say;
↑これで表示されるんだよ
俺がRubyでやりたかったことの全てがPErlに詰まってる気がする

Perl6はじめるなら今しかないよ

http://rakudo.org/how-to-get-rakudo/
2012/05/07(月) 11:48:45.69
結論:
Perl -> Ruby -> Perl6 (今ココ)
2012/05/08(火) 02:34:24.03
でもPerl6って(ちゃんと)日本語扱えないんでしょ?
45uy
垢版 |
2012/05/08(火) 04:09:20.69
>perl6
> puts"あ";
===SORRY!===
Malformed UTF-8 string

------------------------------
>>44
で?
これが何?
何か問題あんの?

プログラミング中に日本語とか情弱しか使わない
2012/05/08(火) 04:49:28.89
Rubyがんばれ!
47片山博文MZボット ◆0lBZNi.Q7evd
垢版 |
2012/05/08(火) 15:53:39.39
>>45 CGIで日本語使いたいことってあるでしょ?
48uy
垢版 |
2012/05/08(火) 20:31:28.28
別にないけど
2012/05/08(火) 21:13:09.62
日本語わからん奴にナニを求めても。
2012/05/09(水) 01:23:22.50
つまり何を使えばいいの(*•ω•)?
51uy
垢版 |
2012/05/09(水) 01:47:43.66
Rubyです
2012/05/10(木) 23:50:26.51
Rubyも国産のくせにマルチバイト扱うのは面倒な言語だったな
2012/05/11(金) 00:12:39.84
馬鹿には無理
54uy
垢版 |
2012/05/11(金) 06:15:41.47
オブジェクトにいくらでもあとからメソッド追加できる言語で面倒とか

バカは何を使ってもバカには無理ですねwwwwwwwwww
2012/05/11(金) 22:27:58.70
実行中にメソッドを追加したいことはあるか?

答えはNO

実行開始直前にメソッドが追加出来れば良い
56uy
垢版 |
2012/05/12(土) 04:00:45.52
その程度のアルゴリズムしかかけないなら動的言語使わなくていいな
2012/05/12(土) 04:17:21.41
irb のような入力しながら実行できる環境なら
実行時にメソッドを追加したいことはあるかもしれない。

だけど、ソースコードを実行する場合、
動的にメソッドを追加する必要はない。

なぜならソースコードは静的に保存されているから。
実行中にソースコードは変わらない。
58uy
垢版 |
2012/05/12(土) 09:02:57.13
だーから

その程度のアルゴリズムしかかけないなら動的言語使わなくていいな


RoRも使わなくていいな

アホは20年前と同じプログラミングしてればいい

それでもまだ通用するからな

おめ
2012/05/12(土) 10:17:28.81
あぁ、ガキが喚いてるw
60uy
垢版 |
2012/05/12(土) 10:49:55.05
いまどきeval系の機能がいらないとか言っちゃう時点で
2012/05/12(土) 12:28:18.19
eval系の中で一番いらない機能はeval
62uy
垢版 |
2012/05/12(土) 13:26:49.85
なんか遅いっていう印象が強いからな

俺もなるべくevalは使わない
意味的にはevalである処理をかいてもeval関数自体を呼ぶのは最後の手段
2012/05/12(土) 14:01:14.49
eval除いたeval系ってなんだよw
2012/05/12(土) 14:04:10.68
evalと関係ないものを
勝手にevalの仲間に分類してる予感w
65uy
垢版 |
2012/05/12(土) 14:21:24.08
Rubyやらない子には全然わからないと思うよ
まず第一にこれがeval

n = 5
p "#{n}" # => 5
2012/05/12(土) 14:26:59.05
あぁ、Rubyではそれがevalで実装されてるんだ。
ただの変数展開、静的に置き換えればいいだけなのにね。
(scalaはそうなってる。)
67uy
垢版 |
2012/05/12(土) 14:27:49.08
RUBYのソース全てを見てるわけじゃないけど
他言語にはない機能でRubyに存在してる機能はほとんどがevalだろ
少なくとも最初は。

俺が直接evalを呼ぶのを推奨しないのは、
eval以外でかくことによって、あとから最適化や高速化がしやすくなるはずなのと、
あるいは既に直接evalでかくよりも高速化されてるメソッドである場合があるから、なるべくそっちでかく
68uy
垢版 |
2012/05/12(土) 14:30:08.38
>>66
変数展開じゃなくて「式展開」
だからそこでメソッド定義だって出来るよ
puts "#{
def a
puts 99
end
a
7
}"
2012/05/12(土) 14:31:46.84
evalだから実行時に式展開が行われる。

だからこのように動的に作った文字列でも
ちゃんと式展開されるって知り合いのRuby厨がいってた。

p "#{" + "n}" # => 5

本当かなぁw
70uy
垢版 |
2012/05/12(土) 14:38:19.81
>>69
それエラーでたよ
だからある程度は高速化されてる可能性のあるevalなんだよ
わざわざ計ってやったぞ死ね
require "Benchmark"
a = ""
b = ""
n = 6
nn = 100000
Benchmark.bm do|x|
x.report do
 nn.times do
  a << (eval"n")
  end
end
x.report do
 nn.times do
 b << "#{n}"
 end
end
p a.size
p b.size
end

user system total real
eval 1.968000 0.000000 1.968000 ( 2.015625)
rururu 0.141000 0.000000 0.141000 ( 0.140625)
2012/05/12(土) 14:38:23.36
>>68
俺が言語設計するなら、

puts "mae #{
 def a
 puts 99
 end
 a
} ushiro"



puts "mae" + {
 def a
 puts 99
 end
 a
} + "ushiro"


def func_0000 {
 def a
 puts 99
 end
 a
}

puts "mae" + func_0000() + "ushiro"

こんな感じにシンタックスシュガーとして静的に置き換えて
コンパイルするように実装するな。evalで動的に処理するとかw
あとRubyしらんから文法のツッコミは勘弁な。
2012/05/12(土) 14:38:58.25
>>70
> だからある程度は高速化されてる可能性のあるevalなんだよ

なぜ、それがevalだと思う?
ただの式展開だろ。
2012/05/12(土) 14:39:37.27
>>70
高速化されてる時点で、
それは eval ではないという証拠だ。
2012/05/12(土) 14:41:06.28
やっぱりこれだったか

64 名前:デフォルトの名無しさん[sage] 投稿日:2012/05/12(土) 14:04:10.68
evalと関係ないものを
勝手にevalの仲間に分類してる予感w
75uy
垢版 |
2012/05/12(土) 14:41:32.26
eval、式展開

同じ意味だよバカ。

Rubyでは式展開の中ではevalと全く同じ挙動だよ

そっちのが速いって事はevalとは違って式展開の中身に限り最適化できる箇所は最適化しようと努力してんだろ、多分な
2012/05/12(土) 14:43:13.34
違うよw

evalってのは、

"#{" + "n}"

のように、文字列として組み立てたものを
評価する機能だ。
77uy
垢版 |
2012/05/12(土) 14:43:19.30
evalとはいっても他に
instance_eval
module_eval
class_eval
等がある

こちらも ブロックで囲む方法と、""で囲む方法の両方で実行できて
evalと同じ挙動だけど
おそらく(もう計測しねーよ)普通にevalやるよりは
instance_eval
module_eval
class_eval
使ったほうが速いんだろうよ
78uy
垢版 |
2012/05/12(土) 14:44:16.52
>>76
Rubyスレいって教えてもらってこいよお前

話のレベルが低い

まずそれはコンパイルとーらねーからお前はRuby処理系入れる事が第一
2012/05/12(土) 14:44:45.59
お前が教えてもらってこいw
80uy
垢版 |
2012/05/12(土) 14:45:09.52
忙しいから終わり。
2012/05/12(土) 14:45:22.04
evalとはいっても他に
instance_eval
module_eval
class_eval
等がある

だがそこに、式展開は含まれてない・・・
2012/05/12(土) 14:45:52.29
逃げたw
2012/05/12(土) 14:49:44.60
実行中に組み立てた "文字列" を実行中に評価するもの → eval

ソースコード中の "文字リテラル" をインタプリタ or コンパイラが評価するもの → evalではない。
84uy
垢版 |
2012/05/12(土) 14:54:42.21
組み立て方が間違ってんだよお前は

"#{"

これがエラーだっつってんのアホ

Ruby処理系いれて学べよカスが


上級者++に教えてもらってる初心者の分際なんだその態度
85uy
垢版 |
2012/05/12(土) 14:55:30.28
力こそが全ての世界において弱者に発言権などはない
2012/05/12(土) 15:09:06.01
>>84
そりゃevalじゃないからエラーになるよなw
2012/05/12(土) 15:22:13.68
evalメソッドを使っても
式展開は行えないからなぁ

http://d.hatena.ne.jp/nbahide/20080310/1205143144
88uy
垢版 |
2012/05/12(土) 16:00:37.83
>>86
さっさとRuby入れて勘違いを正せ
そういう問題じゃない
unterminated string meets end of file
syntax error, unexpected $end, expecting '}'

>>87
すぐBlogとか引用しないで自分の言葉で説明しろよ
開きたくない
し、

しかもURL見たところ2008情報とかなめてんの?wwwwwwwwwwwww
さっさとRuby1.93いれろカス
def f
p 3
end
bar=1

eval "p bar"
eval "#{f}"
89uy
垢版 |
2012/05/12(土) 16:03:03.81
varsion情報もかいてない

情報も古い

1.8→1.9
1.91→1.93でどれだけ変わっているか分かってる奴なら2008年にかかれた記事を引用しない

なんでこのレベルの奴がこの板にいるんだよ
年々レベル下がってるじゃねーか死ねしね
90uy
垢版 |
2012/05/12(土) 16:19:51.28
急に黙っちゃった

論破された瞬間に黙って消える
こういうのを本当の逃げという
91uy
垢版 |
2012/05/12(土) 16:33:08.36
マジでRuby使ってないって事は分かったよ
おそらくこんなレベルじゃPythonも使ってないんだろうし、
Perl使いこなせる頭もないって事は

PHPER?やJAVAERなの?


ほんと軽蔑するぜ
よくそれで俺と対等とか、あるいは自分のが上とか思ってレスするよね
技術でうそはつけないと思う
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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