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

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2012/05/05(土) 18:42:26.58
いまだにPerl使っている人ははやく移行を考えたほうがいい
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なの?


ほんと軽蔑するぜ
よくそれで俺と対等とか、あるいは自分のが上とか思ってレスするよね
技術でうそはつけないと思う
2012/05/12(土) 22:57:44.16
uyキモいw
93uy
垢版 |
2012/05/13(日) 08:35:55.38
そもそもRuby1.8,1.9でどれだけ違うかもしらず、
Ruby実行環境もない分際でなんでレスしてきたか謎

そのレベルで逆上レスして論破されたら黙り込むとか軽蔑するわ
2012/05/16(水) 07:57:47.66
kard
2012/05/19(土) 19:48:57.16
バージョン非互換の発生が
PHPに近い匂いがする
96uy
垢版 |
2012/05/20(日) 11:39:12.33
なんか急激にperlやりたくなってきた
割とマジで

何でだろう
なんかrubyでかけるアルゴリズムのほとんどを書いた気がするから
perlの省略記法をフルに使ったら、一体何が書けるんだろう?ってちょっと興味があるというか
でもクラスとか使いにくいし手ごろなGUIライブラリもないよな
2012/05/20(日) 13:50:35.75
えっ、あるよ!?
98uy
垢版 |
2012/05/20(日) 20:05:41.86
もうperlやりたい気持ちも下がったからどうでもいいや
ruby最強
9997
垢版 |
2012/05/20(日) 22:39:51.84
おれは10年以上前に書いたのをずーっとお客さんに使ってもらっていて
機能追加したり変更したりし続けてきているから、perlやりたい気持ちが下がってるときも
perlだよ・・・とほほというか、腐れ縁。rubyもそんな関係になれるかしら・・・
2012/05/20(日) 23:15:39.36
perlはもう見るのもいや
修正の機会あるごとにpythonに置き換えてる
10197
垢版 |
2012/05/20(日) 23:28:39.30
いいね! pythonなら置き換えられそう。実験してみたところrubyは起動に時間が掛かりすぎて、だめっぽ。
http://search.cpan.org/perldoc?Date::Japanese::Era へんのモジュールってPythonにある??
102uy
垢版 |
2012/05/20(日) 23:54:43.35
本当言うとさ
perlで挫折したんだ・・・
2012/05/21(月) 00:25:31.29
馬鹿には無理
104uy
垢版 |
2012/05/21(月) 13:06:35.25
バカには無理な上にバカしか使わない
105デフォルトの名無しさん
垢版 |
2012/05/22(火) 14:37:14.09
2012/07/27(金) 02:30:50.26
age
107デフォルトの名無しさん
垢版 |
2012/08/10(金) 09:42:41.99
108デフォルトの名無しさん
垢版 |
2012/08/10(金) 09:43:52.14

109デフォルトの名無しさん
垢版 |
2012/08/10(金) 09:46:09.28
110デフォルトの名無しさん
垢版 |
2012/08/12(日) 16:51:02.95
2008年にリリースされた1.8.7版は当時としてもクズであり、詐欺寸前のJavaからの移行などを
謳い文句に多数の方を阿鼻叫喚の地獄へ叩き落しました。心より情弱乙と申し上げます。
当然、今後も使う奴は真性のバカであります。開発者は1.8に完全に飽きました。
これからは1.9使うよな当然。
2012/08/13(月) 05:33:01.27
片山さつき 「韓国は竹島で日本人44人を殺害した。韓国への通貨スワップ700億ドルは即刻止めよ!」
http://engawa.2ch.net/test/read.cgi/poverty/1344753252/


大使償還、外交日程中止は当然、通貨スワップも凍結、冷静に経済制裁しよう!

歴史的にも国際法上も日本国有の領土である、竹島ですが、マッカーサーラインでは、
「暫定的に」韓国側だったのが、サンフランシスコ平和条約では日本側になった、その際に当時の李承晩大統領が
一方的にラインを設定して不法占拠し、1953年4月には「独島義勇守備隊」が駐屯。6月に日本の海上保安庁と
島根県が竹島を調査し、「日本島根県隠岐郡五箇村」の領土標識を立て、観光漁民6名を退去させた。この頃から、
韓国は竹島を「武装化」し、1952年から 1965年に日韓基本条約が締結されるまで、日本の漁船328隻を拿捕し、44人を死傷させたわけです。

日韓スワップ協定の凍結、輸出入に冠するなんらかの非関税障壁設定、竹島南側のメタンハイドレートを日本側も独自探査、採取へ、等の措置を淡々と、実行していくこと

片山さつき
詳細 2012年08月11日 14:00
http://blogos.com/article/44753/

<参考>
>韓国による日本人抑留者は3929人、拿捕された船舶数は328隻、死傷者は44人を数えた
http://ja.wikipedia.org/wiki/%E6%9D%8E%E6%89%BF%E6%99%A9%E3%83%A9%E3%82%A4%E3%83%B3
112デフォルトの名無しさん
垢版 |
2012/08/13(月) 20:01:14.85
2008年にリリースされた1.8.7版は当時としてもクズであり、詐欺寸前のJavaからの移行などを
謳い文句に多数の方を阿鼻叫喚の地獄へ叩き落しました。心より情弱乙と申し上げます。
当然、今後も使う奴は真性のバカであります。開発者は1.8に完全に飽きました。
これからは1.9使うよな当然。
113デフォルトの名無しさん
垢版 |
2012/08/15(水) 20:16:46.22
age
114デフォルトの名無しさん
垢版 |
2012/08/16(木) 23:47:17.15
2012/08/21(火) 01:50:32.17
116デフォルトの名無しさん
垢版 |
2012/08/24(金) 07:31:10.92
2012/09/07(金) 14:17:22.64
rubyっていきなりhash["hoge"]["foo"]["asdf"] = 1234 とかできないし
hoge += 1もnilに数値は足せないとか言われるし
その辺りPerlよりもCよりだなと思う
2012/09/07(金) 16:48:56.02
えぇっ!?
2012/09/07(金) 16:59:53.11
なんだよ?
120uy
垢版 |
2012/09/18(火) 02:45:23.77
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
2012/09/18(火) 19:38:19.86
rubyっていきなりhash["hoge"]["foo"]["asdf"] = 1234 とかできないし
hoge += 1もnilに数値は足せないとか言われるし
その辺りPerlよりもCよりだな
2012/09/19(水) 23:37:20.82
出来るだろ
2012/09/20(木) 22:30:50.69
馬鹿には無理
2012/09/20(木) 23:47:44.42
rubyにできないことなんて無い
2012/09/21(金) 16:37:45.62
じゃあ>>121を簡単にやるコード書いてみろよ
126uy
垢版 |
2012/09/22(土) 12:52:07.79
うざってー初心者だな
これすらかけないなら才能ねーからもうさっさと死ねば


class Hash
  alias initialize2 initialize
  def initialize
    initialize2
    self.default_proc = ->a,b{a[b]=Hash.new}
  end
end
h = Hash.new
p h["hoge"]["foo"]["asdf"] = 1234



>書いてみろよ
キリッ

じゃねえよ 死ね
2012/09/22(土) 18:19:39.48
hoge += 1は?
128uy
垢版 |
2012/09/24(月) 10:18:49.69
はあ???wwwwwwwwwwwwwww
なんでそんな入門書にかかれてるような初歩ができねえんだよバカか
自分で調べろバカ
初心者死ねバカ
死ね初心者死ね
2012/09/25(火) 00:50:16.82
初期化すればいいだけの話
2012/09/26(水) 15:35:52.65
意味的にはできないな
Rubyにおける h['x']['y']は二次元コレクションの x,y 番地ではなく h['x'] の戻り値 r に対する r['y'] でしかない
PerlやCなんかとは無関係の、単なる一次元のメソッドチェーンだ
2012/09/26(水) 15:39:58.01
perl はもう忘れたけど C の配列多次元に見えてても実質は一次元だろ Ruby と同じ
2012/09/26(水) 21:00:50.46
rubyはブロック変数のあのアホアホスコープの混乱でその寿命を終えた感がある。
1.9でやっとマトモになったけど、大多数のユーザは1.8に留まってる現状。
あれはもうちょっとマジメに設計するべきだったな。
2012/09/26(水) 21:44:58.44
詳しく教えて
2012/09/27(木) 00:53:25.47
RHG
2012/09/27(木) 09:07:37.45
>>131
格納の仕方の話ではない
a[0][1] があったとき、オブジェクト a は [1] の存在を知らされない
[1] の問い合わせは、オブジェクト a のクラスとは無関係の a[0] が返すオブジェクトに対して行なわれる
136デフォルトの名無しさん
垢版 |
2012/10/21(日) 19:41:43.05
137デフォルトの名無しさん
垢版 |
2012/10/22(月) 05:51:40.76
>>130
意味的にも何もあらかじめメソッド宣言すれば出来るだろ
2012/10/22(月) 07:48:09.37
北朝鮮は19日、同国を批判するビラが韓国の領土から北朝鮮国内に散布された場合、韓国を砲撃すると警告した。

国営の朝鮮中央通信社(KCNA)が報じた。

韓国では、北朝鮮からの亡命者や人権活動家で構成するグループが
北朝鮮政府を批判するビラの散布を22日に計画している。

KCNAによると、北朝鮮は22日にビラが散布された場合、「予告なしに軍事攻撃を行う」と表明。
韓国との軍事境界線がある非武装地帯(DMZ)に近い観光地パジュを標的とすると明らかにした。

これを受け、韓国の金寛鎮国防相は19日、北朝鮮が韓国を攻撃した場合には反撃する方針を示した。
聯合ニュースが議会委員会での同相の発言として伝えた。

金国防相は「それが起きた場合は、攻撃への完全な対応を行う」と述べた。

韓国政府はビラの散布に関与していない。

北朝鮮の報道を受け、グループのリーダーは計画を変更せずに予定通り現地時間
22日午前11時半(0230GMT)に気球からビラを散布する意向を示した。

http://jp.reuters.com/article/JPNKorea/idJPTYE89I03Y20121019
2012/10/22(月) 08:47:20.66
>>137
>>135
もちろんObjectクラスに相互連絡用の独自メソッドを定義し、
ArrayクラスやHashクラスの[]メソッドと[]=メソッドの動作を独自に上書きすればできないわけではないが、
そういうのは「Rubyでできる」という表現の範疇に入れるべきではないと思われる
2012/11/11(日) 18:46:51.76
pythonは3への移行で大失敗したし
rubyは1.9への移行で大失敗したし
結局perlしかないのか
2012/11/11(日) 18:50:30.71
そういえばperl6ってどうなったん?
2012/11/14(水) 21:17:06.87
python3もperl6作ってる連中くらい
計画性も実行力も無かったら
python2がperl5みたいになって使い続けられてた。
計画通りpython3をリリースしたのが悪い。
2012/11/14(水) 23:53:23.98
無能な働き者か
無能は無能らしくしてればよかったのに
2012/11/15(木) 21:41:26.36
時代遅れの気持ち悪い文法を
改善修正する努力を放棄すれば
後方互換性の維持なんて簡単だよ
2012/11/16(金) 06:12:18.64
正規表現は悪いところをまねした例
2012/11/25(日) 13:50:36.84
Perl vs Rubyのすれでevalの話になっててびっくり。

別にevalがRubyのよさじゃないのに。

evalって効率の問題よりも、ミスしたとき
(evalに食わせる文字列のサニタイズ?が不十分だったとき)
の被害がでかいのが問題じゃない ?
2012/11/25(日) 17:20:35.63
サニタイズしたらeval使う意味がなくなると思うの
148デフォルトの名無しさん
垢版 |
2012/11/25(日) 21:48:14.63
evalならPerlにもRubyにもあるのにどうして俎上に上ったんだ?
2012/11/25(日) 23:08:16.11
>>60で初めてevalの話題がでたっぽい。

>>54でオブジェクトにメソッドを追加できる話が出て、
>>55で実行時の動的メソッドの追加の話が出て、
んで、いろいろ罵倒が出て>>60につながっているものと思われます。

でも>>54>>55では全然別のこと言ってないではないかい ?
>>55がどういう思い出書かれたかはわからんが。


個人的には>>147の言うとおりサニタイズしたらevalを使う意味が(あまり)なくなるので
生evalは使わないほうがいいんでないかい派

上で出た文字列にRuby式を埋められる等evalっぽいものや制限付きeval
を使うべきだと思っています。

Rubyなら実行時にユーザからRuby式を入力してもらう以外に
生evalが必要な状況って思い浮かばないの。

設定ファイルを読み取ってRuby式を構築して動作させるというのはどうかなぁ。
2012/11/26(月) 01:28:06.55
Rubyがevalで実装しているからといって
evalが必要という事にはならない。

evalは悪。

言語機能が未熟だからevalに頼らずを得ない。
2012/11/27(火) 00:21:04.07
rubyが俺用語の塊だということは分かった
2012/12/03(月) 14:48:57.58
ruby 1.9.3って、Windows 2000でつかえないの?
2012/12/03(月) 15:26:53.93
ruby は windows で使うメリットがほとんど無い
154デフォルトの名無しさん
垢版 |
2012/12/03(月) 23:11:54.00
>>126
はじめてuyが結構できると思った。
155デフォルトの名無しさん
垢版 |
2012/12/03(月) 23:15:13.26
>>152
おまえ、まだWindowsなんか使ってんの?
笑われるぞ
2012/12/03(月) 23:15:26.36
>>154
uyはできる出来ないじゃなくてズレてるのが問題点
157デフォルトの名無しさん
垢版 |
2012/12/04(火) 00:04:21.14
>>127
勉強がてらやってみたぞ

class NilClass
define_method("+") do |num|
num
end
end

hoge += 1
158デフォルトの名無しさん
垢版 |
2012/12/04(火) 00:11:31.48
Test
&nbsp;test
&nbsp;&nbsp;test
159デフォルトの名無しさん
垢版 |
2012/12/04(火) 00:13:43.71
Test
 test
  test
2012/12/04(火) 05:09:24.96
Windowsがいいにきまってるでしょ
デスクトップPCでLinuxが普及する訳がないと思った時というスレがあるよ
2012/12/04(火) 05:26:51.56
>>152
cygwinでruby 1.9.3つかってるひといない?
2012/12/04(火) 06:18:14.52
>>160
フツーなデスクトップPCにWindowsがインストールされているとき、そのWindows上でRubyを使う積極的な理由はない
これの意味がわからない場合は深刻
2012/12/04(火) 06:26:50.51
>>161
Windows 2000にcygwinおよびruby 1.9.3をできたよ!

$ ruby --version
ruby 1.9.3p327 (2012-11-10 revision 37606) [i386-cygwin]
2012/12/04(火) 06:28:45.24
$ which ruby
/usr/bin/ruby
165デフォルトの名無しさん
垢版 |
2012/12/04(火) 07:36:13.09
>>160
今、開発者の勉強会とかだと8割以上macだよ。
悪いけど、俺はWindows使ってる奴は素人だと認識してるわ。
166デフォルトの名無しさん
垢版 |
2012/12/04(火) 09:04:54.43
馬鹿には無理
2012/12/04(火) 10:19:43.66
Linux板より。
@インストールしただけで選民思想
Aやっていることはwindowsと同じ。しかもめんどくさくなっただけ。
Bコマンド打ち込んでプロだと勘違い
C新参に対して黙ってwindowsでも使ってろと間口を狭める
Dカーネルいじればいいだろと無茶を要求
Elinux開発者とのずれを認識できていない
Fwineを使うくせにlinuxを再現しようとする動きがあるとたたく
Gプログラミングできないのにソース要求する
H何でもオープンでないと、気に食わないエセ共産主義者
IWindowsユーザに馬鹿にされてることに気づいていない
JAndroidの事例をを引っ張り出して、「linuxは普及している」と虚勢を張る
KAndroidのセキュリティ問題を指摘されると、AndroidはLinuxではないと言い出す。
L結局普及してない点を指摘されると、「別に普及しなくていいよ」と思考停止
M三度の飯よりアップデートが大好き、コンパイルが大好き、カスタマイズ大好き
NOSを弄ることがゲームと化しているので、ゲームソフトが必要ない
168デフォルトの名無しさん
垢版 |
2012/12/04(火) 10:34:27.82
Developer Efficiency - XCode, Eclipse, Visual Studio
http://youtu.be/OF5mGoKcm80
169デフォルトの名無しさん
垢版 |
2012/12/04(火) 20:51:21.94
>>165
Ruby関係なんかだと、全員Macも珍しくないね。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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