X



つまりRubyってPerlの後続じゃん?
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2012/05/05(土) 18:42:26.58
いまだにPerl使っている人ははやく移行を考えたほうがいい
0069デフォルトの名無しさん
垢版 |
2012/05/12(土) 14:31:46.84
evalだから実行時に式展開が行われる。

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

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

本当かなぁw
0070uy
垢版 |
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)
0071デフォルトの名無しさん
垢版 |
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しらんから文法のツッコミは勘弁な。
0072デフォルトの名無しさん
垢版 |
2012/05/12(土) 14:38:58.25
>>70
> だからある程度は高速化されてる可能性のあるevalなんだよ

なぜ、それがevalだと思う?
ただの式展開だろ。
0074デフォルトの名無しさん
垢版 |
2012/05/12(土) 14:41:06.28
やっぱりこれだったか

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

同じ意味だよバカ。

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

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

evalってのは、

"#{" + "n}"

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

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

話のレベルが低い

まずそれはコンパイルとーらねーからお前はRuby処理系入れる事が第一
0080uy
垢版 |
2012/05/12(土) 14:45:09.52
忙しいから終わり。
0081デフォルトの名無しさん
垢版 |
2012/05/12(土) 14:45:22.04
evalとはいっても他に
instance_eval
module_eval
class_eval
等がある

だがそこに、式展開は含まれてない・・・
0083デフォルトの名無しさん
垢版 |
2012/05/12(土) 14:49:44.60
実行中に組み立てた "文字列" を実行中に評価するもの → eval

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

"#{"

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

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


上級者++に教えてもらってる初心者の分際なんだその態度
0085uy
垢版 |
2012/05/12(土) 14:55:30.28
力こそが全ての世界において弱者に発言権などはない
0088uy
垢版 |
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}"
0089uy
垢版 |
2012/05/12(土) 16:03:03.81
varsion情報もかいてない

情報も古い

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

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

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

PHPER?やJAVAERなの?


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

そのレベルで逆上レスして論破されたら黙り込むとか軽蔑するわ
0096uy
垢版 |
2012/05/20(日) 11:39:12.33
なんか急激にperlやりたくなってきた
割とマジで

何でだろう
なんかrubyでかけるアルゴリズムのほとんどを書いた気がするから
perlの省略記法をフルに使ったら、一体何が書けるんだろう?ってちょっと興味があるというか
でもクラスとか使いにくいし手ごろなGUIライブラリもないよな
0098uy
垢版 |
2012/05/20(日) 20:05:41.86
もうperlやりたい気持ちも下がったからどうでもいいや
ruby最強
009997
垢版 |
2012/05/20(日) 22:39:51.84
おれは10年以上前に書いたのをずーっとお客さんに使ってもらっていて
機能追加したり変更したりし続けてきているから、perlやりたい気持ちが下がってるときも
perlだよ・・・とほほというか、腐れ縁。rubyもそんな関係になれるかしら・・・
0102uy
垢版 |
2012/05/20(日) 23:54:43.35
本当言うとさ
perlで挫折したんだ・・・
0104uy
垢版 |
2012/05/21(月) 13:06:35.25
バカには無理な上にバカしか使わない
0105デフォルトの名無しさん
垢版 |
2012/05/22(火) 14:37:14.09
0107デフォルトの名無しさん
垢版 |
2012/08/10(金) 09:42:41.99
0108デフォルトの名無しさん
垢版 |
2012/08/10(金) 09:43:52.14

0109デフォルトの名無しさん
垢版 |
2012/08/10(金) 09:46:09.28
0110デフォルトの名無しさん
垢版 |
2012/08/12(日) 16:51:02.95
2008年にリリースされた1.8.7版は当時としてもクズであり、詐欺寸前のJavaからの移行などを
謳い文句に多数の方を阿鼻叫喚の地獄へ叩き落しました。心より情弱乙と申し上げます。
当然、今後も使う奴は真性のバカであります。開発者は1.8に完全に飽きました。
これからは1.9使うよな当然。
0111デフォルトの名無しさん
垢版 |
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
0112デフォルトの名無しさん
垢版 |
2012/08/13(月) 20:01:14.85
2008年にリリースされた1.8.7版は当時としてもクズであり、詐欺寸前のJavaからの移行などを
謳い文句に多数の方を阿鼻叫喚の地獄へ叩き落しました。心より情弱乙と申し上げます。
当然、今後も使う奴は真性のバカであります。開発者は1.8に完全に飽きました。
これからは1.9使うよな当然。
0113デフォルトの名無しさん
垢版 |
2012/08/15(水) 20:16:46.22
age
0114デフォルトの名無しさん
垢版 |
2012/08/16(木) 23:47:17.15
0116デフォルトの名無しさん
垢版 |
2012/08/24(金) 07:31:10.92
0117デフォルトの名無しさん
垢版 |
2012/09/07(金) 14:17:22.64
rubyっていきなりhash["hoge"]["foo"]["asdf"] = 1234 とかできないし
hoge += 1もnilに数値は足せないとか言われるし
その辺りPerlよりもCよりだなと思う
0120uy
垢版 |
2012/09/18(火) 02:45:23.77
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0121デフォルトの名無しさん
垢版 |
2012/09/18(火) 19:38:19.86
rubyっていきなりhash["hoge"]["foo"]["asdf"] = 1234 とかできないし
hoge += 1もnilに数値は足せないとか言われるし
その辺りPerlよりもCよりだな
0126uy
垢版 |
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



>書いてみろよ
キリッ

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

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

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

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

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

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

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

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

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

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

evalって効率の問題よりも、ミスしたとき
(evalに食わせる文字列のサニタイズ?が不十分だったとき)
の被害がでかいのが問題じゃない ?
0148デフォルトの名無しさん
垢版 |
2012/11/25(日) 21:48:14.63
evalならPerlにもRubyにもあるのにどうして俎上に上ったんだ?
0149デフォルトの名無しさん
垢版 |
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式を構築して動作させるというのはどうかなぁ。
0150デフォルトの名無しさん
垢版 |
2012/11/26(月) 01:28:06.55
Rubyがevalで実装しているからといって
evalが必要という事にはならない。

evalは悪。

言語機能が未熟だからevalに頼らずを得ない。
0154デフォルトの名無しさん
垢版 |
2012/12/03(月) 23:11:54.00
>>126
はじめてuyが結構できると思った。
0155デフォルトの名無しさん
垢版 |
2012/12/03(月) 23:15:13.26
>>152
おまえ、まだWindowsなんか使ってんの?
笑われるぞ
0157デフォルトの名無しさん
垢版 |
2012/12/04(火) 00:04:21.14
>>127
勉強がてらやってみたぞ

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

hoge += 1
0158デフォルトの名無しさん
垢版 |
2012/12/04(火) 00:11:31.48
Test
&nbsp;test
&nbsp;&nbsp;test
0159デフォルトの名無しさん
垢版 |
2012/12/04(火) 00:13:43.71
Test
 test
  test
0160デフォルトの名無しさん
垢版 |
2012/12/04(火) 05:09:24.96
Windowsがいいにきまってるでしょ
デスクトップPCでLinuxが普及する訳がないと思った時というスレがあるよ
0162デフォルトの名無しさん
垢版 |
2012/12/04(火) 06:18:14.52
>>160
フツーなデスクトップPCにWindowsがインストールされているとき、そのWindows上でRubyを使う積極的な理由はない
これの意味がわからない場合は深刻
0165デフォルトの名無しさん
垢版 |
2012/12/04(火) 07:36:13.09
>>160
今、開発者の勉強会とかだと8割以上macだよ。
悪いけど、俺はWindows使ってる奴は素人だと認識してるわ。
0166デフォルトの名無しさん
垢版 |
2012/12/04(火) 09:04:54.43
馬鹿には無理
0167デフォルトの名無しさん
垢版 |
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を弄ることがゲームと化しているので、ゲームソフトが必要ない
0169デフォルトの名無しさん
垢版 |
2012/12/04(火) 20:51:21.94
>>165
Ruby関係なんかだと、全員Macも珍しくないね。
■ このスレッドは過去ログ倉庫に格納されています

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