つまりRubyってPerlの後続じゃん?
■ このスレッドは過去ログ倉庫に格納されています
いまだにPerl使っている人ははやく移行を考えたほうがいい evalだから実行時に式展開が行われる。 だからこのように動的に作った文字列でも ちゃんと式展開されるって知り合いのRuby厨がいってた。 p "#{" + "n}" # => 5 本当かなぁw >>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) >>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しらんから文法のツッコミは勘弁な。 >>70 > だからある程度は高速化されてる可能性のあるevalなんだよ なぜ、それがevalだと思う? ただの式展開だろ。 >>70 高速化されてる時点で、 それは eval ではないという証拠だ。 やっぱりこれだったか 64 名前:デフォルトの名無しさん[sage] 投稿日:2012/05/12(土) 14:04:10.68 evalと関係ないものを 勝手にevalの仲間に分類してる予感w eval、式展開 同じ意味だよバカ。 Rubyでは式展開の中ではevalと全く同じ挙動だよ そっちのが速いって事はevalとは違って式展開の中身に限り最適化できる箇所は最適化しようと努力してんだろ、多分な 違うよw evalってのは、 "#{" + "n}" のように、文字列として組み立てたものを 評価する機能だ。 evalとはいっても他に instance_eval module_eval class_eval 等がある こちらも ブロックで囲む方法と、""で囲む方法の両方で実行できて evalと同じ挙動だけど おそらく(もう計測しねーよ)普通にevalやるよりは instance_eval module_eval class_eval 使ったほうが速いんだろうよ >>76 Rubyスレいって教えてもらってこいよお前 話のレベルが低い まずそれはコンパイルとーらねーからお前はRuby処理系入れる事が第一 evalとはいっても他に instance_eval module_eval class_eval 等がある だがそこに、式展開は含まれてない・・・ 実行中に組み立てた "文字列" を実行中に評価するもの → eval ソースコード中の "文字リテラル" をインタプリタ or コンパイラが評価するもの → evalではない。 組み立て方が間違ってんだよお前は "#{" ↑ これがエラーだっつってんのアホ Ruby処理系いれて学べよカスが 上級者++に教えてもらってる初心者の分際なんだその態度 >>84 そりゃevalじゃないからエラーになるよなw >>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}" varsion情報もかいてない 情報も古い 1.8→1.9 1.91→1.93でどれだけ変わっているか分かってる奴なら2008年にかかれた記事を引用しない なんでこのレベルの奴がこの板にいるんだよ 年々レベル下がってるじゃねーか死ねしね 急に黙っちゃった 論破された瞬間に黙って消える こういうのを本当の逃げという マジでRuby使ってないって事は分かったよ おそらくこんなレベルじゃPythonも使ってないんだろうし、 Perl使いこなせる頭もないって事は PHPER?やJAVAERなの? ほんと軽蔑するぜ よくそれで俺と対等とか、あるいは自分のが上とか思ってレスするよね 技術でうそはつけないと思う そもそもRuby1.8,1.9でどれだけ違うかもしらず、 Ruby実行環境もない分際でなんでレスしてきたか謎 そのレベルで逆上レスして論破されたら黙り込むとか軽蔑するわ なんか急激にperlやりたくなってきた 割とマジで 何でだろう なんかrubyでかけるアルゴリズムのほとんどを書いた気がするから perlの省略記法をフルに使ったら、一体何が書けるんだろう?ってちょっと興味があるというか でもクラスとか使いにくいし手ごろなGUIライブラリもないよな もうperlやりたい気持ちも下がったからどうでもいいや ruby最強 おれは10年以上前に書いたのをずーっとお客さんに使ってもらっていて 機能追加したり変更したりし続けてきているから、perlやりたい気持ちが下がってるときも perlだよ・・・とほほというか、腐れ縁。rubyもそんな関係になれるかしら・・・ perlはもう見るのもいや 修正の機会あるごとにpythonに置き換えてる いいね! pythonなら置き換えられそう。実験してみたところrubyは起動に時間が掛かりすぎて、だめっぽ。 http://search.cpan.org/perldoc?Date::Japanese::Era へんのモジュールってPythonにある?? 2008年にリリースされた1.8.7版は当時としてもクズであり、詐欺寸前のJavaからの移行などを 謳い文句に多数の方を阿鼻叫喚の地獄へ叩き落しました。心より情弱乙と申し上げます。 当然、今後も使う奴は真性のバカであります。開発者は1.8に完全に飽きました。 これからは1.9使うよな当然。 片山さつき 「韓国は竹島で日本人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 2008年にリリースされた1.8.7版は当時としてもクズであり、詐欺寸前のJavaからの移行などを 謳い文句に多数の方を阿鼻叫喚の地獄へ叩き落しました。心より情弱乙と申し上げます。 当然、今後も使う奴は真性のバカであります。開発者は1.8に完全に飽きました。 これからは1.9使うよな当然。 rubyっていきなりhash["hoge"]["foo"]["asdf"] = 1234 とかできないし hoge += 1もnilに数値は足せないとか言われるし その辺りPerlよりもCよりだなと思う wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww rubyっていきなりhash["hoge"]["foo"]["asdf"] = 1234 とかできないし hoge += 1もnilに数値は足せないとか言われるし その辺りPerlよりもCよりだな うざってー初心者だな これすらかけないなら才能ねーからもうさっさと死ねば 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 >書いてみろよ キリッ じゃねえよ 死ね はあ???wwwwwwwwwwwwwww なんでそんな入門書にかかれてるような初歩ができねえんだよバカか 自分で調べろバカ 初心者死ねバカ 死ね初心者死ね 意味的にはできないな Rubyにおける h['x']['y']は二次元コレクションの x,y 番地ではなく h['x'] の戻り値 r に対する r['y'] でしかない PerlやCなんかとは無関係の、単なる一次元のメソッドチェーンだ perl はもう忘れたけど C の配列多次元に見えてても実質は一次元だろ Ruby と同じ rubyはブロック変数のあのアホアホスコープの混乱でその寿命を終えた感がある。 1.9でやっとマトモになったけど、大多数のユーザは1.8に留まってる現状。 あれはもうちょっとマジメに設計するべきだったな。 >>131 格納の仕方の話ではない a[0][1] があったとき、オブジェクト a は [1] の存在を知らされない [1] の問い合わせは、オブジェクト a のクラスとは無関係の a[0] が返すオブジェクトに対して行なわれる >>130 意味的にも何もあらかじめメソッド宣言すれば出来るだろ 北朝鮮は19日、同国を批判するビラが韓国の領土から北朝鮮国内に散布された場合、韓国を砲撃すると警告した。 国営の朝鮮中央通信社(KCNA)が報じた。 韓国では、北朝鮮からの亡命者や人権活動家で構成するグループが 北朝鮮政府を批判するビラの散布を22日に計画している。 KCNAによると、北朝鮮は22日にビラが散布された場合、「予告なしに軍事攻撃を行う」と表明。 韓国との軍事境界線がある非武装地帯(DMZ)に近い観光地パジュを標的とすると明らかにした。 これを受け、韓国の金寛鎮国防相は19日、北朝鮮が韓国を攻撃した場合には反撃する方針を示した。 聯合ニュースが議会委員会での同相の発言として伝えた。 金国防相は「それが起きた場合は、攻撃への完全な対応を行う」と述べた。 韓国政府はビラの散布に関与していない。 北朝鮮の報道を受け、グループのリーダーは計画を変更せずに予定通り現地時間 22日午前11時半(0230GMT)に気球からビラを散布する意向を示した。 http://jp.reuters.com/article/JPNKorea/idJPTYE89I03Y20121019 >>137 >>135 もちろんObjectクラスに相互連絡用の独自メソッドを定義し、 ArrayクラスやHashクラスの[]メソッドと[]=メソッドの動作を独自に上書きすればできないわけではないが、 そういうのは「Rubyでできる」という表現の範疇に入れるべきではないと思われる pythonは3への移行で大失敗したし rubyは1.9への移行で大失敗したし 結局perlしかないのか python3もperl6作ってる連中くらい 計画性も実行力も無かったら python2がperl5みたいになって使い続けられてた。 計画通りpython3をリリースしたのが悪い。 無能な働き者か 無能は無能らしくしてればよかったのに 時代遅れの気持ち悪い文法を 改善修正する努力を放棄すれば 後方互換性の維持なんて簡単だよ Perl vs Rubyのすれでevalの話になっててびっくり。 別にevalがRubyのよさじゃないのに。 evalって効率の問題よりも、ミスしたとき (evalに食わせる文字列のサニタイズ?が不十分だったとき) の被害がでかいのが問題じゃない ? サニタイズしたらeval使う意味がなくなると思うの evalならPerlにもRubyにもあるのにどうして俎上に上ったんだ? >>60 で初めてevalの話題がでたっぽい。 >>54 でオブジェクトにメソッドを追加できる話が出て、 >>55 で実行時の動的メソッドの追加の話が出て、 んで、いろいろ罵倒が出て>>60 につながっているものと思われます。 でも>>54 と>>55 では全然別のこと言ってないではないかい ? >>55 がどういう思い出書かれたかはわからんが。 個人的には>>147 の言うとおりサニタイズしたらevalを使う意味が(あまり)なくなるので 生evalは使わないほうがいいんでないかい派 上で出た文字列にRuby式を埋められる等evalっぽいものや制限付きeval を使うべきだと思っています。 Rubyなら実行時にユーザからRuby式を入力してもらう以外に 生evalが必要な状況って思い浮かばないの。 設定ファイルを読み取ってRuby式を構築して動作させるというのはどうかなぁ。 Rubyがevalで実装しているからといって evalが必要という事にはならない。 evalは悪。 言語機能が未熟だからevalに頼らずを得ない。 ruby 1.9.3って、Windows 2000でつかえないの? ruby は windows で使うメリットがほとんど無い >>152 おまえ、まだWindowsなんか使ってんの? 笑われるぞ >>154 uyはできる出来ないじゃなくてズレてるのが問題点 >>127 勉強がてらやってみたぞ class NilClass define_method("+") do |num| num end end hoge += 1 Test test test Windowsがいいにきまってるでしょ デスクトップPCでLinuxが普及する訳がないと思った時というスレがあるよ >>152 cygwinでruby 1.9.3つかってるひといない? >>160 フツーなデスクトップPCにWindowsがインストールされているとき、そのWindows上でRubyを使う積極的な理由はない これの意味がわからない場合は深刻 >>161 Windows 2000にcygwinおよびruby 1.9.3をできたよ! $ ruby --version ruby 1.9.3p327 (2012-11-10 revision 37606) [i386-cygwin] $ which ruby /usr/bin/ruby >>160 今、開発者の勉強会とかだと8割以上macだよ。 悪いけど、俺はWindows使ってる奴は素人だと認識してるわ。 Linux板より。 @インストールしただけで選民思想 Aやっていることはwindowsと同じ。しかもめんどくさくなっただけ。 Bコマンド打ち込んでプロだと勘違い C新参に対して黙ってwindowsでも使ってろと間口を狭める Dカーネルいじればいいだろと無茶を要求 Elinux開発者とのずれを認識できていない Fwineを使うくせにlinuxを再現しようとする動きがあるとたたく Gプログラミングできないのにソース要求する H何でもオープンでないと、気に食わないエセ共産主義者 IWindowsユーザに馬鹿にされてることに気づいていない JAndroidの事例をを引っ張り出して、「linuxは普及している」と虚勢を張る KAndroidのセキュリティ問題を指摘されると、AndroidはLinuxではないと言い出す。 L結局普及してない点を指摘されると、「別に普及しなくていいよ」と思考停止 M三度の飯よりアップデートが大好き、コンパイルが大好き、カスタマイズ大好き NOSを弄ることがゲームと化しているので、ゲームソフトが必要ない Developer Efficiency - XCode, Eclipse, Visual Studio http://youtu.be/OF5mGoKcm80 >>165 Ruby関係なんかだと、全員Macも珍しくないね。 ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.4 2024/05/19 Walang Kapalit ★ | Donguri System Team 5ちゃんねる