あ、間違えた
落としてください
3 :
デフォルトの名無しさん:2012/01/16(月) 14:34:16.95
クックパッドってRubyで開発されてるんですよね
やっぱり企業でRubyが採用されてきているということでしょうか?
今から覚えておけば仕事につながりますか?
Rubyを使っているところもあるけど
ほとんどないよ
なにかメインの言語を使えた上でRubyならありじゃない?
ってか何かひとつの言語に精通していればたいていのひとは
他言語もすぐつかえるようになるがw
一応PHPはできると思ってますが求人を見るとRubyとかJavaとか見るのでPHPの仕事ないのかと思ってました
特定の言語が出来ます!だけを就職活動の売りにするのは危険な気がするが。
PHPしか使えませんというのは一山いくらのPGコースになるので、
例えばJava Ruby PHPはある程度使えますというくらいになった方がいい。
何を作りました、のほうがいいよ
あるモジュールが名前空間を汚染するので
module Hoge
require 'hoge'
end
とかでモジュールの下に入れいたいのだけど
↑ではダメでどうしたらいいの
名前空間を汚染するモジュールってのは
module とか class で囲まれていない関数定義とかが存在してるってこと?
ファイル内容を全部文字列で読み込んでクラス定義/モジュール定義文中で eval するとかの
ちょっと強引な方法しか思いつかなかった。
もし学生なのなら
サーバーを自前で立てて何かしらのWebアプリを1から作ってみたら?
それを面接でURL教えて見てもらえば
自分の実力をアピールできるんじゃないかな
JAVAが使えます!
とか言われても面接官には実力なんてサッパリわからんよ
プログラムを覚えるのにしても
具体的に何か作ったほうが身になるよ
>プログラムを覚えるのにしても
>具体的に何か作ったほうが身になるよ
これはあるよな。
あとちゃんと最後まで完成させる癖つけといた方がいいとは思う。
逆引きが文字化けしてる
rubyの逆引きサイトを作ったらここの先生方からアドバイスやご指摘はいただけるものですか?
何で作ろうかと思ったのは己のコードを見せることが成長につながると思っているからです
cgi formで送られてきたキーの中身が空の場合に
以下のようにして、空かどうか見てるのだが、もっとスマートな方法はないの?
cgi['hoge'].length == 0
または
cgi['hoge'] == ''
ちなみに、キー自体があるかどうかのこれ↓ではないです。
cgi.has_key?('hoge')
18 :
16:2012/01/20(金) 23:11:33.99
19 :
16:2012/01/20(金) 23:12:33.73
そりゃ、そうだよね。
スマートな方法あるよね。
20 :
デフォルトの名無しさん:2012/01/21(土) 07:54:05.53
/\w/がひらがなにマッチするコードとしないときがあるんだけどこの条件なんでしょうか?
1.8のときは、KCODE設定しているかどうかだった思うんですけど
すいません質問スレで質問したいんですけどどなたかスレ立てていただけませんか?
ぶっちゃけ回答者9割くらい被ってるので、ここを見つけたならここで質問とかしてもらって一向に構いません
EmacsでRubyモードの場合に、先頭に「# -*- coding: utf-8 -*-」というのが
勝手につくんですけど、これをやめさせるにはどうしたらいいですか。
#つけたほうがいいのはわかったうえで、個人的事情によりつけたくない。
emacs スレで聞く内容だろ。
Emacs の ruby-mode は利用者も多いと思われる話なので、ここでも構わないけど、回答が来なくても泣かない
で、ruby-mode-set-encoding で検索するといいかもしれないのだが、お手持ちの ruby-mode.el のバージョンで動作するとは限らない
いろいろ抹殺パターンはある模様
IDEを使えばそんな問題おきないのにね!
>>27 >ruby-mode-set-encoding
これでぐぐってうまくいきました!ありがとうございます。
テキスト文章のなかにRubyのコードをかくときに、一時的にRubyモードに
したかったのですが、そうすると頭に勝手にマジックコメントがつくので
こまってたんです。助かりました。
>>5 railsがなくなったらrubyは辞めます。
本当の意味で意味ないし。
,―ヽ_(((((_、―
,/ ノ ヽ ~\
/ ノ IPA ヽ ~\
/ ノ ヽ、 `ヽ
| ノ / ̄\ / ̄~ヽ ヽ i
| ノ | ノ
\ | <●> <●> ( )
\ | | | i /
| / ヽ レ
i (●_●) /
i、 ,-――-、 ・ /
i、 <(EEEEE)> ∵/ IPA Rubyスレにようこそ
i、 \ ./ /
\ ーー ,ノ
,,.....イ.ヽヽ、ー-―一ノ゙-、.
: | '; \_____ ノ.| ヽ i
| \/゙(__)\,| i |
32 :
uy:2012/01/27(金) 08:47:34.65
>>30 railsのほうが意味なくね?って思う
最近思ったんだけど
スクリプト言語ってさ
今までC++やJAVAで苦労して作っていたものが
スクリプト言語ではライブラリが備わってて
楽に作れるようになるのが、素晴らしいだけで
スクリプト言語から入った奴って、何を作ったらいいかわからなくなりそうだよな
検索すれば「え?こんなものまであるの?」ってくらいにはライブラリは出てくるけど、
そのライブラリの名前を知る機会っていうのは、
他言語でプログラミングしていないとないような気がする
でもそれはどの言語からはいってきても同じなのだろうか?
でもやはりネイティブ言語で少しは苦労してきた(効率の悪いコードや再発明をしまくってきた)奴でないと、
このありがたみはわかり辛いのかもしれない
33 :
デフォルトの名無しさん:2012/01/27(金) 12:46:28.27
別にスクリプト言語に限らず近代的な言語はライブラリはかなり充実してると思うぞ?
Java なんか全然苦労してないと思うけど。
単純に開発者の層がわかれていくだけの話だと思うよ。
ドメイン毎に特化した業務知識が必要な部分と、それを実現するための高度な情報科学を必要とする低層の部分とで。
rubyで、ファイルの内容を$stdoutに出力する時に
$stdout.write File.open(file, 'rb') {|f| f.read }
としているのですが、ファイルの内容をそのまま出力するだけのときは、
ファイルの内容をRuby側に読み込むのはメモリの無駄だと思います。
$stdout.send_file(file)
みたいなかんじて、ファイルの内容をダイレクトに$stdoutに出力する方法はありますか。
File.open('large.txt') do |f|
f.each_char{|c| $stdout.print c}
end
原理的にはバッファしないと出力できんが、要はメモリに1文字ずつとか1行ずつとか読み込めばいいんだろ
36 :
デフォルトの名無しさん:2012/01/27(金) 22:16:46.39
IO.copy_stream はバッファリングを無視したら要望を満たすかな?
ソースに$stdout.send_file(file)と書きたいだけなのか、
実際に動作としてファイルの内容をダイレクトに$stdoutに出力したいのか、
どっちだろ?
前者だったらお好きにどうぞだけど、後者だったら少なくともPOSIXな環境にはそんなシステムコールは
無いような気がする
require 'hogehoge' したとして、じっさいにどのファイルが読み込まれたのかを調べる方法はありますか。
which 'hogehoge' #=> /usr/local/lib/ruby/1.8/lib/hogehoge.rb
みたいなの。
40 :
デフォルトの名無しさん:2012/01/28(土) 09:32:22.15
1.9から$LOADED_FEATURESの中身が絶対パスになってるけど、
配列だからrequire時の引数との関係は完全には分からないな。
(拡張子まで明示してrequireされたかどうか、とか)
42 :
デフォルトの名無しさん:2012/01/28(土) 10:23:49.94
IO.copy_streamの実体rb_io_s_copy_stream関数から
copy_stream_body
nogvl_copy_stream_func
以下、USE_SENDFILEが定義されているとき
nogvl_copy_stream_sendfile
simple_sendfile
sendfile
という呼び出しの流れ。
USE_SENDFILEは、linuxでは定義されてるけど、BSD系は
/* This runs on FreeBSD8.1 r30210, but sendfiles blocks its execution
* without cpuset -l 0.
*/
というコメントがあって#ifdef outされてる。
以上 io.c より。
まあ環境依存だし
システムに特化したもので最適化したいならRubyなんて使わずにCで書いたほうがいいよ
うむ、たとえ1バイトでもバッファリングしたら死んじゃうという人はぜひCで
顔を紅潮させながら崇史はそう叫んだ
>>42 何を言わんとしているのか分かりにくいけど、
・IO.copy_streamは、Linuxではsendfile()を呼び出している
・残念ながらBSDではなんかの事情によりsendfile()は使われてない
ということ?
もっと分かりやすい説明して。
>>46 > BSDではなんかの事情により
cpuset -l 0 しないと sendfiles がブロックするって書いてあるだろ
48 :
デフォルトの名無しさん:2012/02/07(火) 01:09:07.61
ruby(1.9.1)+soapについて質問です。
rubyのsoapクライアントとして、soap4r-ruby1.9-2.0.3を使っています。
soapのサービス側としてはAxis2を使ってJavaにて実装しています。
soapサービス側にて、get()関数の返り値として、Javaで定義したクラスを返そうとしています。
サービス側の実装イメージは以下です。
public class SoapService{
public SoapServiceResult getResult(){
return new SoapServiceResult();
}
}
public class SoapServiceResult{
public String str1 = "str1";
}
このように、Javaのクラスを返り値とするSOAPサービスに対してRubyでクライアントを書くことは不可能なのでしょうか?
>>48 うん、不可能。
任意のRubyオブジェクトをMarshalモジュールでダンプして文字列として返すコードは、
SOAP4Rでも実装できる。でも、そんな(Ruby依存な)SOAPレスポンスを処理できる
クライアントをAxis(Java)で書くことは(一般的には)不可能。それと同じ事。
Axis文書の読書ガイドで紹介されている "The Wondrous Curse of Interoperability"
(相互運用性の驚くべき呪い) という文書を読むことをオヌヌメする。
文書の題名をググればPDF形式で読めるから、そこに解決方法が書かれている。
もし分からなければ、Java関連スレ(Axisスレ?)で以下ように質問しなさい
「Axis2でプログラミング言語に依存しないサービスを設計するための指針はありますか?」
これ以上はスレ違いだ。
このスレは間違いなので放置推奨
>>50 Ruby初心者スレッドはどこに行ったんだ?
Riteはどうなってるんだろ
Luaと勝負できるようなのが出来たらいいんだけど
>>53 Twitterに何も書かれてない記事初めて見たwww
Riteって性能ではLuaには及ばないのでは?
LuaJITには到底かなわなさそう
モジュラー構造で機能の取捨選択が出来て
メモリフットプリントを小さくすることにより
組み込み機器に乗せることが可能にし
「組み込み機器もRubyで制御できればいいね」
を実現するのが主目的なんじゃないの
まつもとゆきひろ「public static void mainなど、コンピュータに伝える約束事が多くて、
やりたいことが頭の中から逃げてしまう。簡潔さは力なのです(中略)
“実行可能疑似言語”と呼ばれる何言語でもないコードが示されることが多い。
それはPascalもどきとか、Algolもどきで書いてある。
もどきといっても、アルゴリズムをちゃんと記述できている。
だったら、それを理解できる言語を作ればいいじゃん、ということで、ある意味、それがRubyの目標です」
「ソフトウェアは工業製品ではない」、Rubyのまつもと氏が講演 − @IT
http://www.atmarkit.co.jp/news/200904/10/matz.html 2009/04/10
メタ言語のことで、一般にBNFやBN記法と略される
バッカス・ナウア記法 − Wikipedia
パンじゃつれねーだろ
やっぱミミズか?
何かに認定されたってね。おめでとう。
mrubyについての話題無し?
初代にくらべ笹田さんの実装がいくらか効率的なんだろうけど、
なんかやっぱMatzに実装してもらいたい気がしてたからいいニュースだった。
Matzも血が騒いだのかもしれん。
63 :
デフォルトの名無しさん:2012/04/25(水) 20:05:18.55
初心者スレで、これからはmrubyのほうを学べきでしょうか、という
いかにも初心者な質問が出てたくらい。
動かしてみたい人は勝手に拾ってきてコンパイルしてるだろうし、
webやら日々のスクリプティングにはあんまり関係ないしな。
64 :
デフォルトの名無しさん:2012/04/26(木) 20:50:39.59
エディタのマクロ言語なんかもmrubyの担当領域になるのかね。
66 :
デフォルトの名無しさん:2012/04/27(金) 01:02:52.42
いや、アプリに組み込むインタプリタって意味で。
冷蔵庫に付いてる伝言機能用エディタに組込むならいいと思う
>>64 エディタぐらいであれば、
フルスペックのRubyを組み込んでもいいんじゃないのかなあ
emacsにおけるelispの位置をえるためには、
rmacsが必要だなw
1.9.2p290はファイルを読むとき CR,LF,CR+LF を改行扱いしてたけど
1.9.3p194だと CR が改行扱いされないのはなんか方針が変わった?
Windows7でRubyInstaller使用
Rubyって今からやるならver何使えばいいん?
mruby
74 :
デフォルトの名無しさん:2012/04/28(土) 21:27:10.92
1.9.3の最新使っとけ
mrubyはそれが何なのか自分で理解できる奴以外には不要。
2013年までは1.8.7を使うのが吉だな。互換性問題に悩まなくて済む。
>>72 rvmで1.9.3
>>75 2013年でそれまでに作ったものがゴミになるかもしれないだろ
勉強してる間に即腐敗する1.9系よりまし。
どっちも覚えろよ
Rubyにかぎらずこの業界一生そんなもんだ
馬鹿には無理
バージョンごとに互換性がないのはRubyとPHPくらいなものです
>>80 それは、あなたが3つしか
言語を知らないということですか?
受注ベースで仕事してるなら非互換はむしろ仕事のチャンス
>>81 他にあるならあげて見てくれないか?
もちろん仕事で使える言語で
パイソンはまだ前科一般だからRubyやPHPと一緒にするのはかわいそう
前科一般とか関係ない。
事実は事実。
漏れはまだPython3使ってないから関係ないや
だから3つしか知らないんだろうなと言った。
RubyとPHPとPythonは後方互換性がない
他は安心
全部スレチだろ。煽るだけなら黙ってろ
だから一々そんなの気にしないで全部おぼえろっつってんのに
1.8用のプログラムはもはやゴミだよな…手元で動かすのがだるいだるい。
JRubyとかですらデフォルトが1.9モードになってしまった。
94 :
デフォルトの名無しさん:2012/04/29(日) 10:15:53.01
つうかC言語のソースコードだって大昔にかかれた奴って
今のコンパイラじゃコンパイル通らなくね?
>>78 それだと思う
本来ならば根幹の主軸を誰も動かさず
根幹を丁寧に作り、その上に少しずつでも資産を積み重ねたほうが数億倍いいんだけど
まだ誰も「正確に」根幹を作れていない
だから結局、流れの中で生きていくしかない
技術が廃れる前に覚えるという学習速度こそが最も大事、
さらに先にいけば、新しい有望な言語や技術が出てきたときに入門書や書籍が書いたら即売れるような時期に
調べてすぐにかいてしまったり、上手く採用してしまうレベルの奴が金儲けをしていく
本質本質って言い続けてるだけの奴っているよな
> つうかC言語のソースコードだって大昔にかかれた奴って
> 今のコンパイラじゃコンパイル通らなくね?
Rubyはつい最近の話だから問題。
それなりに互換性には気を使ってるCでも
K&R C→C89→C99の過程でも非互換性は発生してるので……
究極的には、「完璧な」仕様と実装の処理系を出せばいいんだろうけど
それこそ無茶言うなって感じではあるし
そういう意味ではISO/IEC 30170:2012はまずい流れなんでしょうかね
ANSI以前のCなんて方言だらけだっただろうし、規格が無いならそれも当然だと割りきれる
けど、一度規格作っちゃったら互換性を蔑ろにはできないような…
枯れた言語が好きなら、common lispにしときなさい。^^;
>>98 ちゃんと規格票を読んでないんだが、
あれはRubyの最小部分のセットを定義してあるだけで
しかも実装依存の部分が大量にあった気がする
matzもRubyの将来的な発展を妨げない形での規格化と言ってたと思う
101 :
uy:2012/04/29(日) 16:01:22.48
変わっていけばいいじゃん
文句たれてるやつは、変わらないものが好きなんじゃなく「変われない」だけ
あんまり先鋭的にいきがると
後で自分の首しまるよね
でもMatzどころかGuidoもオプソであるからにはmove or dieだそうだ
104 :
uy:2012/04/29(日) 22:07:12.20
Ruby中学生がんばってるね
俺が人に興味を持つのは珍しい事である
あのレベルならあと5年後には、俺から見ても「優秀」と言えるレベルになってくれるかもしれない
今のレベルはまだまだだ
ブログにコードはあげてるが、所詮生きてきた時間が短いのでネタがない
人に読ませる為の文章をかいたり、ブログに大勢にとって有益な情報をかいて発信するネタがな
まだあれは、人に読ませる為のコードではなく、自分はこんなことも出来るよレベルのソースコード
だがあせる事はないそこまで出来たらハッカーや
昭和の頃覚えたアセンブラとC言語
これがあったから
いまだに自分が損な業界で飯を食ってる
高校生の妹にRubyを教えてるんだけど何から教えたら良いかわからん…
インターネットみたいなの作りたいんだけど…とかいうレベル
matz服を脱ぎます
着衣は既に脱いでおる
まずその服を脱いだ妹とやらをうpすればいいと思う
開発環境と本だけ与えて放置するとか?
服も着せてやれよ
馬鹿には無理
jk.strip! if jk.cute?
Rubyって、日本語の5c問題とかで、文字化けは無いと思ってて良い?
草加
>>114 Rubyは、日本人がつくったから問題は発生しないとおもったらだめです(バージョンによっては、がっかりすることもある。安心できない)
Ruby 1.9.3をつかいます(安心できるはずなんだけど…)
>>114 理屈的には絶対に起こらない
が、たぶん、あなたが期待しているような感じで自動で判別されて自動で解釈されて自動で変換されて自動で防止されるわけではない
>>114 問題が発生したら、もっと具体的にかいてください
>>117 > あなたが期待しているような感じで自動で判別されて自動で解釈されて自動で変換されて自動で防止されるわけではない
まあ求められてるのはそのへんなんだろうな
この処理は(または、この文字列は)Shift_JIS(という名のCP932またはWindows31-J)です、という指定はできるが、
その指定が「正しい」かどうかまで追試はしてくれないし、出力や外部コマンドに渡したときにきちんと動作するかまでも保証できない
120 :
uy:2012/04/30(月) 13:52:56.77
require "kconv"
require "open-uri"
open("
http://toro.2ch.net/test/read.cgi/tech/1328648447/895").read \
.toutf8 \
=~ /(見えない人と会話しないでください.*?)\</
puts $1
こういう風にネットからページ等ダウンロードして正規表現かけるようなコードでよく突っかかって毎回思うんですが
=~ するときに
Stringをutf8(または今のソースコードの標準文字コード)に暗黙的に変換すると何か問題あったりするんですか?
.toutf8 かくのが無駄なような気がしてなりません?
utf16とかutf64とかutf512であれば、toutf8に変換したらよくないのも分かりますけど、
sjisやeuc程度の雑魚カス文字コードなんて特殊参謀のutf8様に勝てる日は来ないんじゃないですかね
とりえあえず妹にはRailsでウェブアプリを作ってもらう事にしましたよ
ありきたりだけど付箋でペタペタ貼付けられるようなコルクボードみたいなのを作ってもらおう
じゃあコルクボードには私が
現行でも文字化けさせる方法はないでもない
irb> "test".gsub(/t/,"表A".encode('Shift_JIS').force_encoding('BINARY')).encode('UTF-8','Shift_JIS')
=> "表Aes表A"
irb> "test".gsub(/t/,"表0".encode('Shift_JIS').force_encoding('BINARY')).encode('UTF-8','Shift_JIS')
=> "付es付"
irb> "test".gsub(/t/,"表1".encode('Shift_JIS').force_encoding('BINARY')).encode('UTF-8','Shift_JIS')
Encoding::InvalidByteSequenceError: incomplete "\x95" on Shift_JIS
Shift_JIS系列で「表0」と書いたものをバイナリとして扱ってる文字列(Ruby1.9ではレアだが、たとえばRuby1.8でとか)を
subやgsubの第2引数に指定するとなにがなんだかわからない感じに化ける
理由を答えることができたらRuby初級脱出
124 :
uy:2012/05/01(火) 17:42:06.33
Ruby-Tkをexe化できるものってない?
ocraでも無理だったんだけど?
1.9.3、いい感じです。1.9.2で培ったバッドノウハウもようやく捨てられそう
mrubyってISO/IEC 30170に従ってるの?
ここもかつての勢いが無くなったな
妹って書き込むと一瞬伸びる
俺の妹がこんなにmatzなわけがない
>>129 リアル妹なぞそんなもん
現実を受け入れろ
mrubyって高速だったりはしないの?
省メモリ方向には工夫されてるかもね。
メモリをダァッと使って高速化するようなことはしてないだろうな。
mrubyでゲーム系のスクリプトもRubyになってくれるとうれしいんだけどな
RPGツクールは昔からRubyだけどなんか変なバージョンだ
今でさえ1.8の資産はゴミとか言われてるのに、本当にゲーム系に採用してほしいのか?
> 1.8の資産はゴミとか言われてる
本当に? ってまずお前に聞きたいなw
>>133 「完全無編集」のRuby処理系を提供しなければならない理由はなにもない
Ruby1.8.5ベースだろうがRuby1.9.3ベースだろうがJRubyベースだろうがmrubyベースだろうが、
「本家とは違う処理をするruby」を添付するのは、ライセンスさえ守れば自由だ
過去、手を加えたruby処理系を提供した実績があるのなら、
たとえmrubyベースであっても「巷のmruby」とはちょっと違ったものになる可能性は高い
しかし、昔は「スクリプト言語」と呼ばれて割り切った使い方をされていたのが、
これほど一応真面目に言語として評価されるようになった点は、評価していいのでは。
まだperlが生まれて25年しか経ってないよ。
昔はCと比較することなど憚られるような時代だったし
コンピュータ全体の歴史からいえば25年ってのは相当経ってる方だと思うよ。
139 :
uy:2012/05/02(水) 19:26:56.87
俺からするとマシン性能が良い時代からプログラミング始めたから
なんでスクリプト言語でプログラミングしない奴がいるのか未だに分からない
よくそこら辺の議論でのサンプルコードで
別に言語指定したわけじゃないのに
C言語やJAVAでこれ見よがしに綺麗に(笑)かかれたソースコード上げてる奴って
もしかして全部同じ奴なの?
スクリプト言語を知っていれば、議論での言語指定がない場合において
わざわざ冗長な言語でサンプルコードを書く意味がないことくらい分かるはずなのに、不思議
140 :
デフォルトの名無しさん:2012/05/02(水) 19:58:59.25
最近のツクールのRubyは1.9ベースなんだなぁ。
>>140 VXだかその次のだかで1.9ベースになったんだったっけね。
もう1.9.3より前は忘れてくれ…
後10年は1.8.7使いますよruby
Ruby1.4.6を使ってるうちのシステムはどうすれば…('A`)
別に好きにしたらいいのでは
わかってやってるなら別に何の問題もないと思うし
ただセキュリティ的に対外用のシステムにはどうかとは思うけど
ツクールのライセンスはどうなっているか謎なんだよな
ツクールがGPLってことはないだろうし
ruby 1.9.3p194 (2012-04-20 revision 35410) [i386-mingw32]
をビルドしてみた
1.9.3p125の不具合直ってるかなぁと調べてたら
シングルクォート文字列のマルチバイト文字直前の\の挙動が修正されて
’\あ’ が 「あ」 ではなくて正しく「\あ」になる
が、しかし
"\あ" が 「\あ」 になる エンバグorz
#coding:cp932
puts '\!\y\あ' # => \!\y\あ
puts "\!\y\あ" # => !y\あ
ついでにビルドしてみた ruby 2.0.0dev (2012-04-30 trunk 35500) [i386-mingw32] だと
#coding:cp932
puts '\!\y\あ' # => \!\y\あ
puts "\!\y\あ" # => !yあ
これが、正しい挙動のはず
ruby 1.9.3p194 (2012-04-20 revision 35410) [i386-mingw32]
影響の少なそうな不具合について
修正されたもの
・ブロック無しでIO.foreachを呼ぶとオプションハッシュのモード指定が無視される
IO.foreach('foo',mode:'rb'){|line| } だとモード指定が有効で
IO.foreach('foo',mode:'rb') だとモード指定が無視されてたのが直った
Windows環境だけと思うけど
・Dirオブジェクトのinspectが読めない(常にUTF-8 バイト列が出てくる)
Dir.openに渡したパスがSJISならSJISでinspectされるようになった
UTF-8で渡したものはUTF-8でinspectされるので
依然としてコマンドプロンプトでは読めないが、これはしかたないかな
修正されてないもの
・IO.read foreach readlines writeでオプションハッシュ binmode:trueを渡すとエラー
2.0.0snapshotでは直ってた
1.9.3からかWindowsのコマンドプロンプトで
puts "日本語".encode('UTF-8')
$stderr.puts "日本語".encode('UTF-8')
てしてもcp932でちゃんと読めるように表示される
リダイレクトしたりパイプしたりで
コンソール以外に出力するとUTF-8になる
オブジェクトのinspect表示は
p Struct.new(:foo).new("日本語".encode('UTF-8')) # => #<struct foo="\u65E5\u672C\u8A9E">
cp932で表示できるようにエスケープされてる
エラーメッセージ
"日本語".encode('UTF-8').hogehoge # => undefined method `hogehoge' for "\u65E5\u672C\u8A9E":String (NoMethodError)
cp932で表示できるようにエスケープされたUTF-8文字列が出てくる
raise "日本語".encode('UTF-8') # => 譌・譛ャ隱・(RuntimeError)
UTF-8が直に表示されて化ける
まちまちだな
こ、こんなスレがまだあったんだ・・・
Rubyなんて終わったものだと思ってた。
まだ始まってませんよ?
153 :
uy:2012/05/04(金) 15:40:58.06
まじめに始まってすらいないと思う
変わり続けてるせいか、枯れた技術だとはとてもいえない
枯れないために変わり続けてるんだ
Ruby1.9.1とか1.9.2とかで動かないgem大杉w
もう切り捨てられてるのかw
1.9.3にしたら全部すんなり動いたはw
王道のRubyに加え、エンプラ分野ではJRuby、組込ではmrubyとどこでもRubyできる時代になってきたな。
器用貧乏
エンプラはJRubyってのはどういう理屈なの?
エンプラで実績のあるJVM, Javaのライブラリを使えるからとか?
世の中で普及しているのは、
なんでもできる言語ではなく
特定の分野でずば抜けている言語です。
何でもできるのと何処でも動くのとは違うだらう
ブラウザでも動くようにしてくれ
rubylet誕生のきっかけである
mrubyってluaみたいなポジションのrubyだっけ
JavaScript実装がなかなか良いのが出てこないの。
まぁなんのメリットもないからしょうがないかw
JavaScriptにメリットがないからな
>>163 Matzは「ライバルはLua」と言ってた気がする
組み込みやすいRubyという事で、
ある部分では競合するだろう
くやしいが、 mruby が性能でLuaに勝つのはかなり厳しいな…。
言語としてはRubyのほうが圧勝なんだから、性能比較に持ち込まれないように気をつけないと。
性能比較されたら負けだとおもってる
Apacheモジュールのmod_luaと性能がどうのこうの言ってる人がいるけど何がしたいのか全く理解できない
人の趣味にどうこう口出すつもりはないけど...
無益だなぁとため息がでる
組込の例で、ライバルとの性能比較がしたかったんだろ?
他人の愚痴に口を出す気はないけれど...
そんなことも理解できないなんて無能だなぁってため息が出る
検討材料すら揃えられないんじゃ勝ち負け以前の問題だよ
導入するにあたって性能比較するのは別に何の問題もないのでは・・・
たとえそれでmrubyの方がluaより低かったとしても程度によってはrubyの書きやすさを取るって判断するかもしれないし。
許容出来ないぐらい遅かったら採用見送るのは当然だと思うし。
175 :
uy:2012/05/05(土) 04:12:03.25
それよりも並列処理で完全に劣るんでしょ
暇ができたらmruby用のJITコンパイラ書きたいな
アセンブリに触れたらC99の範囲で書いた意味がないだろ
Civの.pyに対抗して
コーエー三國志のAIを.rb弄ってカスタマイズできるようにしてくれ
179 :
デフォルトの名無しさん:2012/05/05(土) 10:39:57.00
civ4はpythonで、civ5はたしかluaだったな。
吉里吉里とかの紙芝居ゲームスクリプトがrubyで書けたら特定方面で
受けるかも知れん。
速度の話題はRubyでは禁忌
>>177 インタプリタのレベルで評価実行すると、どうしてもひと回り遅くなるから
速度を求めるならJITで機械語に落とすのは有力なアプローチだよ
いまさらだけどtrap::Hashの回避策ってブロック使うのがいいと思うんだけど
h = Hash.new([])
h[0] << 0
h[1] << 1
p h #=> {}
p h.default #=> [0, 1]
h = Hash.new{|h,k| h[k]=[]}
h[0] << 0
h[1] << 1
p h #=> {0=>[0], 1=>[1]}
p h.default #=> nil
183 :
デフォルトの名無しさん:2012/05/05(土) 13:44:08.30
mrubyって何がどう軽量なの?
リソースの制限が厳しい環境を想定したアルゴリズムが組み込まれてるってこと?
メモリ馬鹿食いのRubyを
少しましにしたもの。
省メモリ設計なRubyってこと?
もちろんフットプリントだけじゃなくて
あれこれなアルゴリズムも省メモリなんだよね?
ってことはメモリ量の多い少ないでRubyとmrubyを性能比較すれば、
多メモリだとRubyが勝って、少メモリだとmrubyが勝つんだよね?
もしそうじゃなかったらプロジェクト失敗ってことだよね?
よーし…
mrubyで正規表現使えますか。
試してみた限りでは、正規表現リテラルがシンタックスエラーになります。
しかしソースコードには正規表現用のソースがあるようです。
どういうことでしょうか。
>>186 違うぞ。
性能比較すれば、通常のRubyの方が勝つ。
ただし、組み込み環境だと通常のRubyは重くて”動かない”
動かないから性能などを下げて動かせるようにしたのが
mruby
mrubyってのはrubyのサブセット
ようは劣化rubyだろ
組み込みやらん奴には関係なさそうだな
mrubyの説明読んでわかんないような人が普段Ruby使ってるんだというのが結構ショック
ゴメン説明よんでないはw
どこよめばいい?
調べるのめんどくちゃーい
「動かしてみた」「公開されたらしい」とかいう記事ばっかでいみぷ
本家を見る癖ぐらいつけましょうw
Ruby世代は本家を見ずにまず検索。
個人のブログを読んで終わり。
本家=ぐーぐる
>>187 parse.yで '/' が出てくるところに #if 0 ... #endif があるから未実装なのでは
日本発だからって日本語の情報があると思うなってのを過去に学んだ俺は
英語のページを探しても見つからず、ようやくスペイン語ページで発見
mrubyの家電やら車載コンピュータやらのハードに組み込むってことじゃなくて
LuaとかJavaScriptみたいに他のアプリに組み込むって意味の組み込みじゃないの?
じゃない
そもそもmrubyでrubyが標準で持ってるライブラリがほとんどないし
単体で使うものではなく、組み込みの言語処理系として使うためのものだろ
そうだよ。Rubyの機能を最小限まで減らして、
ディスク容量とメモリ容量を減らしたもの。
機能的に劣る。メモリを使わない分遅い。
でも仕方がない。組み込みってのは制限がきついんだ。
組み込みってみんなが言ってるのは
>>197が最初に言ってるような
いわゆる組み込みシステムのことなの?
ルンバをmrubyで制御しちゃうの?
202 :
uy:2012/05/06(日) 07:21:12.42
2年前にドメインとって放置状態じゃんw
>>201 両方だよ
下のレイヤーとのインターフェースを自分で書けばRuby処理系が使えるし
mruby自体はC99の範囲で書いるらしいし
ルンバに乗るのはRubyじゃなくネコ
WEBサービスで
# yaml generator
require "yaml"
puts eval($stdin.read).to_yaml
というRubyスクリプト入力すると短縮URLをゲットできて
そこにアクセスすると標準入力のテキストを入力できて
[実行]ボタンをクリックすると
Input:
[1,2,[3,{4=>5}]]
Output:
- 1
- 2
- - 3
- 4: 5
を得られる所ないかな。
どちらかと言うとサンプルじゃなく実用コード仕込める所。
とりあえず危険なので「てめえでサーバ借りて実行しろ」「貴様の目の前にある箱は飾りか」というのが一応の回答
制限つきででもあればあったで面白そうだけどね
似たようなのはどっかで見た記憶もあるんだが、どこだったか
Rubyでは、メソッドを定義した部分をフックできるような機能が用意されてますが、
同様のことはインスタンス変数でもできないでしょうか。
インスタンス変数に値をセットしたときに呼ばれるフック関数みたいなのがあれば教えて下さい。
なおやりたいことは、インスタンス変数への操作を記録することです。
自力で全部用意すればできると思うんだが、きっとあんまり楽しくないぞ
「アクセスが記録されるのでアクセサメソッド使ってくださいね♪」とマニュアルにピンクの字で書いとけ
Rubyは「ユーザーの操作をプログラム的に監視して禁止や警告をする」のはあんまり得意ではない(放任主義)
再定義を監視するのができなかったがたぶんファイナライザ定義すればきっとできる(たぶん)
class LoggingProxy
REQUIRED = %w(__send__ object_id)
instance_methods.each{|mes| undef_method(mes) unless REQUIRED.include?(mes.to_s)}
def initialize(obj, orig_var, log = nil)
@obj, @orig_var, @log = obj, orig_var, log
end
def method_missing(name, *args, &block)
@log.warn("from #{name}") if @log
@orig_var.__send__(name, *args, &block)
end
class << self; attr_accessor :logger; end
end
class C
require 'logger'
def initialize
@log = Logger.new($stderr)
@var = LoggingProxy.new(self, 'ORIGINAL_VARIABLE', @log)
end
def hoo
p @var.downcase
@var = 'NEW VALUE!'
p @var.downcase
end
end
C.new.hoo
ああ、そういやクラスメソッドの logger は結局使わなかったんだ
class メソッドが undef_method で消えちゃってアクセスできないんだよね
class << self; attr_accessor :logger; end の部分は見なかったことに
>>212 一生懸命書いてくれたところに悪いのですが、これは何が言いたいのでしょうか。
質問は、
> インスタンス変数に値をセットしたときに呼ばれるフック関数みたいなのがあれば教えて下さい。
です。
@foo = 999
みたいに、インスタンス変数に代入したときにそのことを検出する方法があれば教えてください。
というか、そもそもやる理由ないと思うんだけど
インスタンス変数にアクセスするなら自己責任だし
どっかで誰かが書き換えるのを阻止する理由はない
検出と書いてあるように見えるが
Kernel#set_trace_func でやるのが正攻法なのかなぁ。と思ったけど
こっからインスタンス変数の設定を読み取るのは出来るんだろうか。
set_trace_func(
lambda{|event, file, line, id, binding, classname|
if event == "line" and line == <assignment_linenum>; ...
(´・ω・`)これはあかん。あかんよ
デバッガでの変数ウォッチ実装するのに必要だから出来ないはずはないんだけどなぁ。
>>217,218,219
なるほど、set_trace_func()というデバッガ向けの機能があるんですね。
試してみます。ありがとうございます。
>>218 >(´・ω・`)これはあかん。あかんよ
なんであかんのん?
doは結合強度低いのが存在意義みたいなもんだからね
>>221 インスタンス変数に代入している行の番号をハードコードしてるから
ソースへの行の追加や削除に対して脆弱だなと思って
ただソースコードにset_trace_funcを埋めこむのではなく
対話型デバッガから行番号を指定させる場合とかなら便利に使えそう
新ラムダの場合
->(){}
->()do end
両者の結合強度は同じなのでは?
p ->() do end
が
p( ->()) do end
になったりしたらそもそも成立しないのだから
現に
p ->() do end は p( ->() do end ) と解釈されるし
ところで、エラー再現最小コードはこれだった
p ->do 1.times do end end
begin endでも似たようなことがおこる
いままでそんな記述をする人がいないので問題にならなかったのかな
p begin 1 end #通る
p begin 1.times do 1 end end # エラー
もちろん
p( begin 1.times do 1 end end ) # 通る
226 :
uy:2012/05/09(水) 20:38:08.92
>>225 あ、これって->と関係ないバグじゃん
報告行くしかないぜ
227 :
uy:2012/05/09(水) 20:49:46.67
報告した
どうでもいいけどRD?ってものの書式分からなくてミスった
どう書くのあれ・・・
p begin 1.times do end end # エラー
p begin p do end end # エラー
p -> do 1.times do end end # エラー
p -> do p do end end # 通る
begin endの方は関数形式でもエラーになるね
グルー言語だけに?
大人が使うとそれなりのものが作れるけど、
幼児が使うとネバネバのベチャベチャになるということ。
と言うかネバネバのベチャベチャにして
糊とはいかなるモノなのかを身体で感じさせるのが目的だけどねアレ
233 :
デフォルトの名無しさん:2012/05/12(土) 11:01:49.16
フエキ糊ボトル型のハンドクリームとかあるんだぜ。
236 :
デフォルトの名無しさん:2012/05/12(土) 17:40:31.69
そこは「APIのバージョン」という、インタプリタのバージョンとは別の数字ということになってる
(あるいは、1.9.3のリリースの時には、なってた)
embeddedだから当たり前といえばあたり前なのかもしれなけど
mruby は 64bit対応してないな…segmentation errorでこける…
なるほどねー
ややこしいけどしかたないねー
>>238 embeddedだからポータブルで当然だし
バグだと思うよ
そういえばRubyチップはまだなのかい?
LLプログラマブルなガジェットとか楽しそうじゃん
YARV と RiteVM の比較マダー
1.8.6でからruby使ってないんだけど、最近一層Windowsの冷遇が進んでる?
最新版のMS-Win32版のバイナリが見つからないんだけど。
mswin32版ではなくmingw32版だから…
246 :
uy:2012/05/13(日) 13:46:49.89
ゆんゆん電波降り注ぎングで工作員かきこんじゃいまひゅううううううううううううううううううううううううううううううううううううううううううううううううう
探さないと見つからない時点で充分冷遇
探さずに見つかるってどういう状態?
249 :
uy:2012/05/13(日) 15:52:30.14
RubyはWindowsで使ってこそ真価を発揮する
http://ja.wikipedia.org/wiki/Lua >Luaにおけるテーブル(連想配列)の実装はかなり最適化されており、特に>キーに数値のみを使用した場合は、単純な配列としてさらに高速に動作する>ようになる。
Rubyもこうしようよ。こっちの方が良いよ。
ArrayとかHashとか使い分けたくないじゃん!
言い方の問題だな
数値以外もキーに使えるが、その場合の動作は低速となる
よし、じゃあ比較してみるんだw
Luaの低速な場合ですらRubyよりは速そうだw
比較して結果示して言えよ
いままで組込用途ではLuaが調子にのってたけど、mrubyの登場で完全勝利だね
現状では月となんとやらレベルの差があるのに何言ってるんですかもう
それは性能だけの話だろ?ほんと視野の狭いやつだなw
言語的には、あんなキモオブジェクト指向、Rubyと比べるまでもない。
Luaのどのへんがキモオブジェクト指向なのか詳しく
>>243 1.8.6の頃からなら同じ場所にあると思うのだが…
以前使ってたmswin32版って、具体的には何を使ってたの?
妹がRailsで掲示板的なものなら作れるようになってきたぞ
だからお前はまず妹をうpするところから始めろよ
>>259 お前いい加減なこと言ってんじゃねえぞ
ふざけんな
>>263 Windows版を必要としないから無いから
そこのサイト初めて見たけど、1.9.3無くてワロタ
最新版って1.9.3のことだろ?
>>264 ごめんそういうことか、すまん悪かった…
Rubyのサポートチームが
貧弱だって分かるよね。
てめぇの情報検索スキルの無さを棚に上げて何言ってんだ?
LuaはJITがあるからMRIじゃ勝負にならないよな
JRubyかRubiniusの熟成を待つしかないかね
Windows版Rubyの最新版は1.8.6です(キリッ)
Windowsとかローソンの情報端末とかATMでしか使った事ないわw
あと案内板とかなwフリーズしてたけどw
自分でビルドすればええやん
ASRってもう出てないんだっけ。
あれmswinだよね?
なんでビルドしてくれる人いないのさ!
そんなにRubyは使われてないの?
うん。使われてない
だからPython使ったほうがいいよ
windowsで使うこと考えると
pythonの方が安心感があるのは確か
相変わらず"windows"という文字列を食わせると発狂しちゃうんだなここのおっちゃんたちはw
ということにしたいのですね
色々、大切なものを思い出してしまったぜ
この言語を作ってくれたMatzに感謝をする
そして今までム板、マ板に多大なる迷惑をおかけした
ここにお詫び申し上げる
俺はあるものを守る為に力をつけたはずだった、壊す為ではなく
こんな俺でも、こんなクズの人生ひとつで何かを守れるならば上等
mrubyってちっとも「軽量」じゃないな
何を基準にして?
言語機能は一切削ったりしません、がコンセプトだからあんなもんだろ
そりゃ言語仕様を削ったらRubyである必要性もよく分からなくなるだろうし
class O
attr_accessor :x
end
o = O.new
o.x = 2
x = 2
def draw x
p x
end
draw( x -40 )
draw( o.x-40 )
draw( o.x - 40 )
draw( o.x- 40 )
draw( o.x -40 )
この中で1個だけエラーでますとかいってすぐ答えられる奴いんの?
http://ideone.com/T8GGV ____ ━┓
/ \ ┏┛
/ \ ,_\. ・
/ (●)゛ (●) \
| ∪ (__人__) |
/ ∩ノ ⊃ /
( \ / _ノ | |
.\ “ /__| |
\ /___ /
289 :
uy:2012/05/15(火) 10:25:10.76
考え込むほどのことでもないよ
o.x -40
↑で
o.xが変数じゃなくてメソッド扱いされて
o.x(-40)
こんな解釈になってるんだろ
prog.rb:15:in `<main>': wrong number of arguments (1 for 0) (ArgumentError)
↑訳
プログラム、rb15 main
o.xは、1個の引数が渡されています、0個の引数なのに(笑)ッププw その理はアルグメントエラー()
Rubyに変数はメソッド(キリッ)
とかいう設計が仇になった瞬間だった
どうみても設計ミスです本当にありがとうございました!!!!
どうするの?ネェネエコレドウスルノ???Rubyは未来永劫 o.x -40 とかかけないのー?別にいいですけどw
え?? でも四則演算はダメだけどこれは通るんだね
draw( o.x ^40 )
draw( o.x |40 )
____ ━┓
/ \ ┏┛
/ \ ,_\. ・
/ (●)゛ (●) \
| ∪ (__人__) | プッギャアアアアアアアアアアアアアアアアアアアアアアアアアwwwwwwwwwwwwwwwwwww
/ ∩ノ ⊃ /
( \ / _ノ | |
.\ “ /__| |
\ /___ /
アルグメントエラー……
二項演算子の両端はくっ付けるか離すかで揃えるのが基本だから
まずそんなミスはしないと思うが
ちなみに
o.x
が変数となることは絶対にないよ
変数っぽく見えるメソッドであることはあるけどね
293 :
uy :2012/05/16(水) 21:30:46.56
Rubyにデストラクタってないけど
いつ破棄されるか分からない、とあるタスク内で
生成したスレッドの破棄ってどうすればいいのか分からなくなった
クラス変数辺りにスレッド格納して次回のスレッド生成時の前に破棄とかになりそう
nilでも突っ込んで放置しとけばええやん?
295 :
uy :2012/05/16(水) 21:36:41.50
>>293 何にnilを突っ込むの?
「とあるタスク」が破棄される直前までそのスレッドは必要
でも「とあるタスク」はいつ破棄されるか分からない
>>295 んと、とりあえずタスクの意味を教えてくれるかな。
それを教えてくれれば回答できる可能性がある。
297 :
uy :2012/05/17(木) 06:57:44.26
Rubyでゲーム作ってて
ゲームでいうタスクシステムのタスクです
流石に定番すぎて、もはや撒き餌にすらならんぞ、それは。
299 :
uy :2012/05/17(木) 09:48:51.04
あれ?
Thread::listで取得してみたらふるいスレッドなくなってた
もう動けばいいや
rubyをゲームを作るのに使うんじゃなくて、ルビーでゲームを作るのはやめたほうが良いかもしれない
ゲームが出来たらライブラリの制作者に知らせるとものっそ喜ばれると思う
302 :
uy:2012/05/18(金) 02:08:32.03
>>300 もうファイル数40ソース総量5000行くらいかいたから止まれない
でも普通に作れてる
>>301 多分喜ばれないと思う
てかRubyでのゲーム開発環境作りさえ出来るならかなり良いと思うよ
2Dで派手なエフェクトつけないゲームならこれ以上の選択肢はないかな
情報がろくにないから多分環境作りが大変なだけ
ゲームプログラムとは別に、RubyとRuby周辺ツールに詳しくないと開発できないからなw
俺様はもしかしたらこのまま人柱になるのかもしれない
あるメソッドの内部処理が「ダメだった」場合に空のオブジェクトを返すかnilを返すか自作例外を発生させるかの定まった回答はない
そのメソッドやクラスがどういう場面で使用されるか、をよく考えた上で自分で決めるしかない
B#keysが[]を返すのは、空のHashに対するHash#keysが[]を返すことからの類推と、
そのB#[]の作者が[]メソッドに照会の機能を持たせてるからだと思う
メソッドの戻り値の内容はこっちで吟味するからとりあえず配列を返しといて下さい、という
#[key]でnilが返るのも#keysで[]が返るのもダメだったなんて意味じゃないんだが…
入ってると思ってたのに入ってなかったのは単に使い手が仕込んだバグだろjk
306 :
uy:2012/05/18(金) 03:40:43.63
でもそれ、ぷろぐらまーが使うものではないだろ
307 :
uy:2012/05/18(金) 05:16:14.93
完成したゲームをライブラリ製作者に見せたら
ゴミを投げ込むなと怒られた f^_^;)
つまりRPGツクールみたいにプログラムの上で動作するプログラムを書くのがスクリプトであるから
それそのものでゲームを作るのはDVDプレーヤーで動くゲームを作るみたいな事になるんじゃないか
頓珍漢なこと言う前にSDLラッパーでも眺めてきたらどうか
>>304 ダメ、の意味するところにもよるが、通常の返却値に使うデータがない状態は fault と言えるから間違ってはいまい
{ }.keys のときには Hash::Error::NoKey で止まってもよかったし、warn: xxx.rb(12) Hash has no keys と出力してもよかった
でも、それだと不便だから(という理由だけで)敢えて空の配列を返すことにしてるだけだろ
>>310 keysとかいてたら普通は配列が返ってくると思わない?
なのにnilが返ってきたらイラッとこない?
おめー配列返す振りしてなにnilかえしてんだぶちまわすぞコルァってならない?
null値返すよりnull object返せってオブジェクト指向の教科書にもよく書いてあるもんな。
期待される機能は「キーの入った配列」が返ってくることだ
そのキー自体がなかったという”異常事態”の場合、返ってくるモノは配列でなくてもいい、という設計でもそれ自体は一向に構わない
実際問題として、ほとんどの場合、どこかで条件分岐はしなくてはならない
処理のどっかで空っぽになったんだから最終出力も無言で空っぽでいいじゃんという男前プログラムが必要とされる機会はそうそうあるもんではない
そもそも
>>303の文脈がなさすぎる
コピペ厨はこれだから本気で困る
316 :
デフォルトの名無しさん:2012/05/18(金) 22:44:19.70
サイトで証明書の警告がでるけど、リンク先怪しいサイト?
http://www.ruby-lang.org/en/downloads/ 上のページの、
「For the latest instructions on installing rvm, check out the RVM installation page.」
のリンク先は、下のURLになっている。
https://rvm.beginrescueend.com/rvm/install/ ここにアクセスすると、httpsの証明書のエラーが出る。
Firefoxでは下記のエラー(警告)がでる。
This Connection is Untrusted
You have asked Firefox to connect
securely to rvm.beginrescueend.com, but we can't confirm that your connection is secure.
Normally, when you try to connect securely,
sites will present trusted identification to prove that you are
going to the right place. However, this site's identity can't be verified.
証明書まともに管理してないサイトってなんかアレだなぁ
Ruby初めて勉強する場合ってRailsからやるほうがいいの?それともRails使わずに基本からやるほうがいいの?多言語の経験はある
318 :
デフォルトの名無しさん:2012/05/18(金) 23:38:16.28
>>316 rvmのwayeのとこだが、自己書名証明書なんだね。
httpsにしただけでセキュアなつもりになっていると思われる。
まぁrvmなんてオワコンだし、スルーでよいよ。
319 :
デフォルトの名無しさん:2012/05/18(金) 23:40:10.96
nilより空の配列返してくれた方がありがたい
空の配列は真と評価されるから一律で空配列返されると困るお
おごちゃんクソワロタw
>>318 RVMってのは入れる必要ないってことね
Rubyはドキュメント関係がいろいろ貧弱と聞いてはいたけど
公式サイトでいきなり思い知らされた。
英語と日本語だけみても公式サイトの内容がぜんぜん違うし・・・
ていうかrvmなんてcrubyのインタプリタ開発陣はほとんど関知してないプロダクト。
3rdパーティーって書いてある通り、一応リンク書いておくけどそれ以上は知らんよ、
ということなんだろう。
>>317 RubyとRailsは別の言語として覚えたほうが早いかと
Railsをやりたいのか、Rubyをやりたいのかで考えれ
railsで知名度上がった所が有るだけに、あんなのrubyじゃねえよって迫害出来ないのが致命的だな。
rubyの案件欲しいなと思ってrailsの案件受けると酷い目に遭うw
phpの案件をrubyで処理スクリプト生成して済ませたほうが気持ち的に楽。
328 :
デフォルトの名無しさん:2012/05/20(日) 05:43:59.19
Rubyに限らず、もうスクリプト言語ブームが終わる。
ブラウザの時代から、アプリの時代に移ったからね
アプリ時代は、高速に動作する言語が求められている。
コンパイルできるRubyはよ来い
実行時にエラーが見つかるスクリプト言語は開発効率悪いしウンコすぎる
iOSアプリがRubyで書けるらしいね
MacRuby、Titanium、RubyMotion、なんかいっぱいあるよね
どの時点でコンパイルしてどの程度エラーチェックしてくれるのか知らないけど
Rubyぐらい動的性が強いと、静的な型検査はそれで一つの研究になるぐらい極めて困難
静的に分からない事が多いと最適化も難しいのでパフォーマンスも上げづらい
だから実行時にJITで頑張るしかないって話になるんだろうけど
>>330 Rubyはインタープリタだから事前にコンパイルはできないんじゃないの?
>>332 コンパイルしたものをインターぷりっとする。
ほとんどの呼び出しが動的束縛だからコンパイルは難しい。
過去にコンパイラを研究した人がいたけど、動的束縛で呼び出すコードを生成するもので、
作るのもメンテするのも大変で、性能は(当時のインタプリタと比べても)たいして上がらなかった。
実行可能なバイナリファイルとして取り出すとしたら、VMのスナップショットみたいなものになるのかね
336 :
デフォルトの名無しさん:2012/05/20(日) 08:52:17.90
馬鹿には無理
スレの生産性が一向に上がらないな
じゃあ妹の話でもする?
生産性あげるってことならお気にいりgemの話でもしようよ
漏れはいちごが好き
341 :
uy:2012/05/20(日) 09:28:29.47
動的言語での大規模開発って結構レベル要求されるのかもな
コンパイラにあって当然の「エラーチェック」が今の動的言語には存在しないので
鞘のない諸刃の剣というか、
何かが足りない状態でプログラミングしてる気しかしない
ほんとに煽り抜きで、その足りない何かを補えるレベルの奴で集まらないと、
動的言語で大規模開発って無理だなと思った
まぁ逆に考えて、大規模なプログラムとか書かなきゃいいんだよ^^^^^^^
大規模なプログラムってどんなの?
妄言に構うな
345 :
uy:2012/05/20(日) 12:49:42.33
>>342 動的言語でかいたソースコードの量が多いプログラム
そういうのなら何でも当てはまる事を言ったつもり
開発出来なくはない、でもこの感覚はなんというか
出来る奴と出来ない奴で分かれるような、そんな感覚が迸る
動的言語使ってると周りにもそれ使える奴しかいなくなるのかもしれないけど
これは凄い事なのだと、思い返してみた
Rubyはメソッド呼び出す時の引数、戻り値の詳細な知識を
オンメモリで覚えておく必要があるから脳が活性化されるんだよな。
型付き+手厚いIDEサポートのある言語を使うと脳が退化する一方だよ。
>>345 ソースコードの量って行数のこと?何行くらいから大規模なの?
うわぁ………
349 :
デフォルトの名無しさん:2012/05/20(日) 18:13:05.93
>型付き+手厚いIDEサポートのある言語を使うと脳が退化する一方だよ。
同意
皮肉にマジレスわろた
351 :
デフォルトの名無しさん:2012/05/20(日) 18:33:55.31
IDEの支援が要らない、なんてのは「酸っぱい葡萄」だな
効率よく開発しようと思ったらIDEの強力な支援があったほうがいいに決まってる。
動的言語の致命的欠点を認めずに、「脳が活性化する」などと
自分を納得させている
いやだから皮肉にマジレスすんなや
Javaには無理
Javaに出来ることRubyはほとんどできないな
え、たとえば?今時どの言語も出来ないことなんてそうそうないような気がするんだけど
まともなVMとか
VMって出来ることっていうのかね
それをいうなら動作するプラットフォームの数とかだろうに
JMXみたいな管理監視の仕掛けは
「仕事で使うなら」欲しいかな
趣味なら別段どうでもいいところだけど
まともな並列処理
並列処理って手段であって目的じゃなくね?
Rubyって手段であって目的じゃなくね?
何を当たり前なことを。
rorみたいなアプリ鯖前提だと、前回の実行で動的コンパイルしながら使った分だけでもrubyインタプリタから取り出してネィティブコードを残しといて
次回は、インタプリタすっ飛ばしてネィティブコードを再利用したほうが、毎回実行時にコンパイルしながら実行するより処理速度上げられそうだけどね。
単純化すると、インテルのプリフェッチ多段パイプラインと同じだから、先手読んでキャッシュしとけば単純に処理上がるダロウしなあ。
実行時に前回と違う分岐に入ってしまうと、前回の実行ネィティブコードの再利用が出来なくてガッツリ落ちるのはキャッシュミスと同じ理屈で。
それってcpuで言えばパイプラインをありったけ作って、ほとんどの分岐に対応すればいいよねって理屈と同じで、rubyでアプリ作るなら分岐を単純化して普遍的なクラス内の処理に専念すれば、再利用もしやすいし実行速度も上がるよと。
じつはrubyristならちょっとしたスクリプトやクラスをいくらでも抱えてると思うけど、遣ってる事はクラスレベルでは同じかもしれないなとか思った。
毎回クラス読み直してるとでも思ってるのか?このオバカさんは・・・
にわか臭が凄い
では天才さんには、クラスよ見直してないソースを提示して欲しいのですよw
ネタレス以外は初心者スレに行きなさい!
まず読み直してると思った根拠をしめせよ
そのうちrubyは糞とか捨て台詞吐いて去るんだろうなw
RoRのdevelopment環境ではクラスを未定義に直して再読みなおしの処理を*わざわざ*入れている。
開発中はソースが頻繁に書き換わるからね。
product環境に変更すると普通はアプリケーションサーバを再起動しないとクラスの修正は読み込まれない。
インタプリタの実装方法をもうちょっと勉強した方がいいんじゃない?
毎回ソースからコンパイルしてるとでも思ってるんだろうか。
tureta-
rubyは糞だわ
シネ
完全に無知な状態からその考えに至ったなら
自力で登れたというセンスはあるが、
やっと10年前くらいの技術にたどり着いただけの話
すごいなそれ
その発想はなかった
パイプラインをいっぱいったって、
IA系のアーキテクチャじゃ
演算機が少ないから意味ないよな。
いまさらナイアガラ系のアーキテクチャもないだろうし。
>>364みたいなのがいる辺り、やっぱRubyのレベルの低さは否めないなあ。
Java勉強してればこんな馬鹿は発生しない。
>>375 どんだけ釣り師が多いんだよ
Gitコンパイラだろ
Cvsインタプリタ
池澤あやかの仕掛人って誰なんだ?
ISOのタイミングで出てきた気がするが…やっぱあっち畑の方々なんですかね?
>>379 なあ、まさかGitをジットと読んでるのか?釣りだよな。
まあrubyやるよりjavaやっとくほうが現実的なのはそうだしなあ。
JavaScriptすげーな
HTML内で動きまくりHTML書き換えまくり
RubyでもさもさなCGIとかやってる場合じゃない
10年前から来たんですか・・・?
クライアントサイドとサーバサイドの話を一緒くたにするバカを演じてるんだろう
DHTMLの話だろうけどもしかしたらMeteorの話かもしれない
activexだと動画も再生出来るのは驚くケドな。しカもヌルヌルだし。
ウィンドウズメディアプレイヤーで再生する為の
タグを仕込んでた時代からは進化したな
2.0ってどんな感じ?
新機能とか時期とか
Rubyの二十の誕生日に出るって言われてるんじゃなかったかな
今年は出ないだろうから比較的どうでもいい
仕様追加の要望の締切りとかは年内じゃなかったっけ?
394 :
デフォルトの名無しさん:2012/05/26(土) 19:56:34.65
今のところ 2.0 に入ることが発表されている大きめの新機能は、
Module#prepend
キーワード引数
の 2 点です。
あんまりおもろい機能じゃないな
引数と戻り値の型指定+overloadのが嬉しい
JavaScriptと比べる人も居るみたいだがブラウザーという安全性の面で動作が限られるスクリプトと比べたらブラウザー上の奴の方が早くなる事があるのはおかしい事じゃ無い
比べるとしたらPythonやPerl等だろう
日本語対応に優れているという点でまあ処理する文字量が増えるわけだし、単純には比べられないよ
いきなり何いってんだこいつ
察してやれ
RubyのJavaScript実装はまだかね?
だれもつかわないけどw
400 :
uy :2012/05/29(火) 04:16:59.15
ブログとかで使える
Rubyオワタ・・・
高速なJavaScriptコードを生成できるWebアプリケーション向け言語「JSX」が公開される - SourceForge.JP Magazine : オープンソースの話題満載
http://sourceforge.jp/magazine/12/05/31/0748237 DeNAは5月31日、Webアプリケーション向けの言語「JSX」を公開した。
静的型付けやオブジェクト指向といった特徴を持つWebアプリケーション向け言語で、
JavaScriptコードへの変換を行うコンパイラが用意されている。ライセンスはMITライセンス。
JSXは「生産性が低い」、「低速」、「メモリ消費が多い」といったJavaScriptの問題点を解決するために開発されたプログラミング言語。
厳密な型付け機構を持つオブジェクト指向言語で、
JSXコードはJavaScriptコードへと変換して実行できる。
JSXコードから変換されたJavaScriptコードは最適化が施されており、「現代的な」Webブラウザ上で高速に動作するという。
別にWebアプリの分野ならとっくに終わってるじゃん
○○→JavaScriptな言語は総じて気持ち悪くて覚える気がしないぜ
CoffeeScriptとかな。Rails のデフォになってるのもさらに気持ち悪い
Ruby++マダー
>>403 みんながみんな、ちょろっと触ってみただけで「まあ有名になったらまたやってみよう」って放置するから、どれも伸びないんだよね
中途半端にJavaScriptの有名度に「依存」してるから、誰もその言語で何も作らず、結果としてまったく普及しない
開発元が死ぬ気で普及させないとダメ
数大杉だよな
うにょんうにょん内容が動く公式ページがその言語で書かれてます、くらいの勢いがないと…
MSとかAppleとかOracleとかDeNAと言った大企業が作ってる言語って
他の凡百の言語とは安心感が違うよな。
AppleとかOracleってなんか言語作ったっけ。
Javaは買収でしょ。Obj-Cは別にApple製じゃないし。HyperCardのことか?
C#の安心感は認める。
AppleScriptのことだろ
大企業が作ってる言語ってPL/Iのことか?
住み分けの世界が違うからRubyオワタとは全然関係ないけど
触ってみた感じJSXはそうおかしなもんでもなかったよ。CoffeScriptなんかより全然馴染める。
そうか?ルビイストにはCoffeeやDartのほうが馴染むと思うけどな
Dartって今どうなってるの・・・?
Goもどうなってるんだろう
JSXってネーミングがダサイというかセンスねーっていうか…
ところでGoはこないだ1.0になってた。
>>415 新言語が登場してから流行るまで10年ぐらいはかかるから
気長に見ないと仕方ないと思う
母音がない言語は読みづらいぜ
もうSchemeでいいだろ
いじってると楽しいけど仕事では使いたくない典型言語ですか
Scheme、Lisp、Prolog、Erlang、Haskell
↑パズル言語だよね。
仕事中にパズルで遊ぶなと言いたい。
整合性のある成果物を作り上げる仕事が、仕事じゃなくてパズルなら、
整合性のないゴミを作り上げる仕事こそが、真の仕事ということなのかな?
何飛躍してんだこいつ
smartな社会を実現するという方向性があるが
合理性や効率やコストを追求すればする程、資本力がある
ところがさらに強くなり、労働者の仕事がなくなっていく。
非効率であるがゆえに仕事がある。TPPもまたしかり。
(キリッ
いいかげんウザい
initializeって鬱の面倒いわ
initで良かったのでやないか
newじゃだめなんだっけ
何かしらメタメタな都合かね?
430 :
デフォルトの名無しさん:2012/06/02(土) 01:57:31.25
Object#initialize はあくまで生成済みインスタンスの初期化を行うだけ。
生成自体はClass#newの内部で、Class#allocateが行う。
そこに情報を埋め込んでいくのがObject#initialize という役割分担。
>>428-429 ユーザー側としてはinitやnewという名前のインスタンスメソッドを「作れなく」なるけどそれでもいっすか
…まあ、現時点でもそんな名前のメソッド見ないけど…
tializeって撃つのが面倒なんだよ
これまでにいったいどれだけの電力を無駄にしてきたことか!
なんだこれでよかったよ。全く簡単だ。
class Object; def initialize(*p); self.i(*p) end end
マクロが使えればなあ。
Objectとかに関数定義しちゃうのってたとえ使い捨てでも躊躇してしまう。
>>434 _init_とか書いておいて
それをinitializeに置換するスクリプトでも書いたら
アルファベット余ってるんだからrubyのコマンドラインオプションでcpp通せるようにすれば全て解決
#ifdefも使えて生産効率上がりまくるな
438 :
デフォルトの名無しさん:2012/06/02(土) 10:42:03.74
Perlにcppを通すコマンドラインオプション(-P)があったはずだが…
と思って久しぶりにperlrun(1)を見てみたが、今はないのね。
cppはもっと広く使われてもいいよな
コメントはどうすんだよw
441 :
デフォルトの名無しさん:2012/06/02(土) 11:56:51.89
Perlでcpp使うときは、スクリプトとしてのコメントは
;#
とか書いてた。#が1桁目になければプリプロセッサ指令にはならないので。
あれ、今のプリプロセッサ指令ってインデントできなかったっけ?
443 :
デフォルトの名無しさん:2012/06/02(土) 13:06:00.50
OSX Lionにて
$ /usr/bin/cpp <<EOF
# define foo 1
#define bar 2
;#define baz 3
foo; bar; baz;
EOF
は
#define bar 2
;#define baz 3
1; bar; baz;
になった(展開されたのはfooだけ)
同じものを gcc -E (実体はllvm)に食わせたら bar も 2 に置換された。
#とdefineの間は空白あってもいいのか。知らんかったな。
initializeとか長ったらしいのはIDEとか文字補完してくれる環境を使えよ。
ネオコンとか楽だぞ。
to_sとか短い命名規則を採用してるのになんでinitializeだけ長いのかなと。
だから
>>431が答だって
「予約」されているメソッド名が initialize という誰も使わなさそうな長ったらしいのになるようにわざわざしたんだよ
new でもよかったんだが、それだと new というインスタンスメソッドが def で定義できなくなってしまう
むしろinitializeとか普通に使いそうではある
もし変数名aやbが特別な意味を持っているとしたら大変だもんね
initialize と init と setup が揃ってるクラスは意外とあるんじゃないかと思ってみたりする
まあ end という名前のメソッドやローカル変数が容易に使用できない時点でアレなんだけど
classとかもdbのフィールド名なんかには普通に使ったりするもんな
>>447 initializeってみんな使いまくってるじゃん
みんな使いまくってるメソッドをわざわざ長くしてある意味がわかんねぇよ
という疑問
ってかinitとかnewみたいなインスタンスメソッドを定義するなんておかしいだろw
initなんてインスタンスの状態数が増えだけだし、newって何をnewするんだよw
initializeが長くなるとinitという下請けメソッドを定義することがちょいちょいあったりして
>>454 長いから分けるとか初心者みたいな発想じゃないか…
456 :
443:2012/06/02(土) 14:23:08.55
gcc --traditional -E だとbarは置換されずに残ったわ。
initかinitiaizeなんでどうでもええわ
自転車置き場の議論乙!
って言われたらそれまでだけど2ちゃんってそういう場所なんだよね?
twitterでmatzとかに聞いてもめんどくさそうにされそうだしなw
いいえ。initialize が長いとかうアホすぎる話はカンベンしてほしいです。
Railsの小間使い言語なのに偉くなったもんだわ
i8nでいいだろもう
461 :
uy:2012/06/02(土) 16:04:12.88
右 人差し指 i
右 親指 n
右 人差し指 i
左 人差し指 t
右 人差し指 i
左 小指 a
右 中指 l
右 人差し指 i
左 小指 z
左 中指 e
それいったら
attr_accessorもヤバイ
でも別にそんな頻繁に使うものじゃないし別に。
initialize も attr_accessorもキータイプはしやすい単語だから別にいいわ後からこの辺り変えられるほうがきつい
Matz < Ruby 2.0 の目玉機能として init を導入します!!
ΩΩΩ < な、なんだってー
やったー!
NetBeansとかRubyMineとか使おうよ。
rw[TAB] → attr_accessor
言われて見ると
>>461の右手は1個ずれてね?
qwertyだとiは中指だよな。
nを右手親指というのが熱い
右 中指 i
右 人差し指 n
右 中指 i
左 人差し指 t
右 中指 i
左 小指 a
右 薬指 l
左 小指 z
左 中指 e
うちだとこうだな。
nを親指で押すって器用だね。
lが右手中指ってのもすごいな
右手の角度を傾けるとそんな感じの入力になりそうだ
>>461を参考に、右手を傾けてみた。
記号類のキーが遠すぎて押せる気がしない。
461 ってどんな入力なんだ?
未取得レス
きっと
>>461はエルゴノミックキーボード使ってるんだろうな
選り好み糞
ISOの件は要は
「お前らが仕様がない仕様がない言うから必死こいて仕様策定したんであって
これ以上やりたきゃ少しくらい手と金出せっていうか出してくださいお願いします」
という主張だということでいっすか
最近のRubyのライブラリって、引数にkeyがSymbolのHashを使ったメソッドが多いけど、
それって効率悪くないの?
keyがSymbolだけの時だけは特別扱いして、実際にはHashオブジェクトを
アロケートしないような実装になってるとか?
>それって効率悪くないの?
悪いです
>keyがSymbolだけの時だけは特別扱いして
ません
Ruby2.0では真のキーワード引数ができるはずの予定の目標なのでそれまで待って
見やすさ重視で処理二の次という、なんかActiveSupportとかRailsとかあのへんで醸成されたやつなんでもう仕方ない
Rails以前から使われた気がするが
使われてはいたけど、あんまり好意的に使われてなかったように思う
なんかテクニカル過ぎるというか、ドヤ顔が見えるというか
ライブラリいっこだけで使ってれば果てしなく浮くから、仕方ないんだけど
Railsあたりのライブラリでは「見渡す限りぜんぶキーワード風引数可能」というのを提供したんでプチパラダイム
JavaScriptのプロパティとArgumentsが秀逸すぎてRubyとはなんだったのかという気分になる
生かじり君乙
>479
待ちきれないので Python 使ってみたら案外良かった
485 :
デフォルトの名無しさん:2012/06/10(日) 10:20:02.23
javascriptのargumentsはまともにArrayとして扱えればもっとよいものになるのになー。
Symbol Hash渡しがどのくらい遅いか、ベンチマークしてみた人居る?
遅いもなにも、メソッド呼ぶたびに1個Hashオブジェクトが生成されるだけでしょう
そのメソッドを1秒に何百回呼ぶかというだけの話
488 :
uy:2012/06/10(日) 14:00:54.79
require"Benchmark"
def func hs
end
n = 1000000
Benchmark.bmbm do |x|
x.report(:sym) do
n.times do
func({ :test => "aaa"}) end
end
x.report(:hutuu) do
n.times do
func "aaa" end
end
end
Rehearsal -----------------------------------------
sym 2.578000 0.078000 2.656000 ( 2.656250)
hutuu 0.656000 0.000000 0.656000 ( 0.656250)
-------------------------------- total: 3.312000sec
user system total real
sym 2.625000 0.047000 2.672000 ( 2.671875)
hutuu 0.641000 0.000000 0.641000 ( 0.640625)
おせーじゃん
ちなみに引数を
func({ :test => "aaa" , :tete => "ruru" , :ssss => "rubyyy" , :bbb => "aauuu"}) end
にしたら
sym 5.734000 0.062000 5.796000 ( 5.875000)
2.0まではまあそういうもんだって思って使うしかないわな
名前付き引数にHash使うの古のPerlの時代からやってただろ
>>488 普通はfuncの中身がHash作るオーバーヘッドの何倍もあるから些細な違いだろ馬鹿か
小さな仕事をする関数までキーワード引数にするとオーバーヘッドが酷いことになるって察しろよ馬鹿か?
些細な違い()
RubyもJavaScriptくらい金つぎ込んだらもっと強くなれるのかな
>>494 まあ基本、予算イズパワーでございまするがゆえ、ある程度まではお金注ぎ込んだぶんよくなるかとは思われます
すんごい広範で高額になった場合は費用対効果がうまく回らなくなるかもしれないけど、そんな夢みたいな心配する段階じゃないな
>>492 小さな関数でかつ100万回の呼び出しを1秒以内に終えたい場合だけだろ馬鹿か
大体何だよその処理
ハッシュ作るより小さい処理をそんなに呼び出して何がしたいんだよ
誤差誤差いってるからRailsが糞重くなったんだと思うわ。
Railsが重いのは誤差の積み重なりなんかじゃなく、どーやってもはっきり重いmethod_missingとかの積み重ねだと思う
もうカリー化でもしてろ。
引数はkey, value固定で。
カリーぱみゅぱみゅ
このあたりがRubyとC#とかとの開発力の違いだと思う
C#なら使えるとわかったものはすぐに実装されていく
Rubyは遅い
>>502 > 検索 約 2,080 件 (0.19 秒)
こんなのも知らないとか
String#casecmpってなんか積極的に使う意味ある?
正規表現じゃダメなん?
>>503 小さいカレー屋とかが頑張って作ってみたメニューとかが表示されてせつないな
Stringにパス操作文字列ぶっこもうとしたら
すでにrakeにString#extが占拠されていたでござる
しかも仕様がウンコすぎる
>>504 正規表現をどーしても使いたくないときに使う印象
あとCやC++な人とか
Ruby 2.0にnamespace的なものが入るんじゃなかったっけ
それが入れば幸せになれるかもね
508 :
デフォルトの名無しさん:2012/06/11(月) 16:39:11.93
2.0でるのって来年?
少なくとも今年は出ないと毎年言ってるので、来年かもしれません
Rubyの仕事やってみたいなぁ
mod_ruby って今でもOKですかね?
RubyAuthenHandler あたりを使いたいんですが。。
>>505 標準ライブラリのpathnameでは不満?
気持ち悪いスレや
妹も見てるんですよ!
endはどうにかならんかったの?
{}の方がよほど見やすいのだが。
個人的にはBASIC、Delphiと来たのでendのが読みやすい
どっちも慣れの問題だとは思うがね
何度も言われてはいるんだが、終端トークンとして本当になんでもよかったので、見栄えと慣れの問題でしかない
エンドという英単語として捉えてる人は(特に日本では)稀で、なんていうかこう、単なる模様にしか見えない
あと、Ruby における { } には
{key => value}
mes{|arg| block}
"#{embbed}"
と既に3つ仕事があるので、そういう点でもこれ以上増やすのはあんまりよくない
この手のやり取りが30000回くらい繰り返されることによる
生産性の低下をもたらした時点でendは失敗だったなw
(((((((仕事)が(増える)))から(良く無い))という(理由)))は(((なんか))(((無理)(が)(ある))((ぞ))))
だって、endって単純に気持ち悪いよ。
しかもbeginが無いのにendが有るから、余計に。
慣れの問題っていうけど、いまどきの言語がこぞって{}を採用しているからなぁ。
文法的に問題が無いのなら{}にも対応して欲しいな。
何か意地のような物があるのかもしれんが。
>>515 わざとアルファベットのトークンにすることで、 {} を含む他の記号を浮かせてる
実際、リソース管理とかの重要なブロックは {} を使うことで
目立たせるコーディングスタイルもあったはず
{ } hは必ずセットで書かなければならないという致命的な欠点がある
あとネストが深くなる可能性が増える
def mes(arg) {
...
}
と
def mes(arg)
...
end
や
if cond {
...
} else {
...
}
と
if cond
...
else
...
end
は打鍵数としてもそう変わらん
ruby は {} が基本的に特別で、ただの文ブロックじゃなくてクロージャになる。
それ以外はendで終わる。
というルールだけにしておけば、わかりやすかったのではないかと思うが、
{} の代わりに do end と書くこともできたり、BEGIN や END のように {} をただの
文ブロックとして使ってるところもあるので、ちょっと混乱するね。
>>522 >{ } hは必ずセットで
果たしてそうだろうか?それは先入観ではないだろうか?
>>517もendが単なる模様と言う、ならば"}"も単なる模様だ
def mes(arg)
...
}
if cond
...
else
...
}
あ、駄目だこれ
タイプ量の問題ではなくて、見た目の問題だと思うのね。
殆どのいまどきの言語が{}を採用しているから、
目がそっちになれちゃってるのよねぇ。
endが一番やばいのは、クラス使った時じゃないの
class A
def func
"test"
end
def func2
"tess"
end
end
これがさらにモジュールの中の...とかだったりすると、
最後が end end end みたいに end の連続になって、最後ならいいけど
途中だとどこまで戻ったのかわからない、とかでしょ。
C言語の {} でも同じようなことになるけど。
XML「ガタッ」
endばっかりだと暗いじゃん
終端子が多重になるのはどんな言語のどんな文字や記号であっても基本防げないよね
「多重にならない」ことがあるとしたなら、それは途中でネスト構造がなくなってるってことだもの
module M
class C
def hoge
"hoge"
endef
def hage
"hage!"
endmodule
インデントが区切れたら終了ってことにでもする?
def があったらそこで区切ればいいじゃんという意見は稀に見る
class C
def aaa
"えー"
def bbb
"びー"
def ccc
"し〜"
end #<= クラスの終わり
def の中に def も(一応)書けることとか、class 〜 end の中は「キーワード空間」ではなく普通の地の文だということを指摘するとたいてい黙る
class C
puts "クラス定義の中にメソッド実行文が書けるRubyはうんこ"
end
明らかな解決策はインデントベース
あるいは、対応をエディタ任せにして、S式みたいに畳んじゃうとか(end終端だと辛いが)
いずれにせよ万能な解決策とはいかない
()の鬼のlispのなかには ] が来たら全部閉じるみたいなのを実装してるのもあった気がする。
(defun hoge (a b c)
(put "%d" (- a (/ b c]
みたいなの。
535 :
uy:2012/06/12(火) 16:37:17.46
俺様的には
def func ; "test" end
↑こういう事たまにやる奴いるけどこれがうざいから
"test" def func a , b
後おきdefとか作ればって思う
ifもforもイテレータも時代は後置き
>>534 Haskellの$みたいなもんか、あれは開き括弧を$に置き換えることで複数の閉じ括弧を纏めるって形だからちょっと違うけど
>>534 超括弧って名前はそのまんますぎだって昔から思う
三項演算子とか後置ifとかドヤ顔が透けて見える時があるからなあ。
後置ifは別によくね?条件が真の際の内容が一行のときは何使うの?
一行だからって理由で構文変える意味が分からん
後置ifや三項演算子使ったぐらいでドヤ顔とか言われたらたまったもんじゃないな
Zimbuのキモさに比べたら、endと} なんて瑣末な違い
>>541 んじゃあ if 条件式 then 処理; end とか書くのか、読みにくくね?
unko? and unko
or はまだ百歩譲って「または」の意味として読めるからいいけど
andに「ならば」的な意味を持たせるのは何かヘンな感じがする
気持ち悪い奴がいるな
ウンコアンデナマット
unko and enum at
550 :
デフォルトの名無しさん:2012/06/12(火) 20:06:28.10
後置ifが嫌いな奴がPerlの昔からそう言ってるなら許す。
考えてみたらコーチifって評価順が右から左の短縮評価ありのandか
>>550 ruby で嫌いっていってる奴は流石に perl でも嫌いって言ってたと思うよ。
553 :
デフォルトの名無しさん:2012/06/12(火) 20:49:20.73
554 :
デフォルトの名無しさん:2012/06/12(火) 20:50:21.40
C言語でも1行だからってforやifの{}を省くのはクソだって言われているだろ
一行であってもブレースで囲む人と省く人で半々ぐらいじゃないか
書かなくて良いものは書かない
CやJavaならフォーマッタがしっかりしてるからね
インデントではっきりと分かる
宗教論争だからなあこれは
どっちの言うこともそれなりに理があったり言いがかりだったりするし
プロジェクトリーダの趣味に合わせろとしか。
もしくはてめえがリーダーになれるよう頑張りやがれ。
だれかガチで議論して論文でも書けば良いのに
書いてる人いそうな気もするけどね。
古いCの本なんかだと宗教論争だって予防線張った上で持論展開するような人いたよ
望洋先生とか。
もう、括弧だのendだのという不毛な議論のないPythonでいいよ。
書けないけど
ネタ仕様ennndでEND HELLを華麗に解決
module A
class B
def func
"test" end
def func2 x
if x
"tess" ennnnd
ないわー
これはないわー
IDEを使えばnの数を補完してくれる!便利!ってなるのか
ennnnndが無ければ普通にいいと思う
ルビィストの高齢化で話がマンネリ化しまくりだな
人材の若返りが必要だ
はやくGCされればいいのに←
endは誰でもどうにかしたいと思うだろ
特にruby初めて間もない奴ほどどうにか出来ないかと考えるが、
そのうち慣れてどうでもよくなってる
end 嫌いな香具師は Python 使ってればいいよ
消えろ
よく考えたらrequireexとか実装すれば.rb似フィルタ嘉麻市放題なんだよな
これから思えばいい
いつだよw
俺はruby使い出してから、後置ifも三項演算子も大好きになってしまった。
どうでもいい報告かもしれんが妹がRoRをおおむね使えるようになってきたよ。
HTML5とかCSS3に興味が出てきたみたいだからしばらくそっち方面でノシ
脳内妹がんばってるな
うちの妹も最近RoRはじめた
ヒッタ使うのはいいけど兵船使うのはやめてくださいしんでしまいます
Rubyのエラーメッセージって他言語化できないの?
できるなら妹語リソース作るわ
579 :
デフォルトの名無しさん:2012/06/14(木) 22:31:13.17
>>578 今でも使い物になるのか知らないけど、nlizeでぐぐれ
warning: obsolete method Time::times; use Process::times
妹.rb「おにいちゃん!?わたしのxxx勝手に使わないでって言ったでしょ!」
[BUG] Segmentation fault
妹.rb「らめぇ…!」
妹がんがれ
582 :
uy:2012/06/17(日) 23:25:21.87
def r *h
end
a = b = r 1 , 2
p a , b
ruby1.9.3では通るけど、この記述って
ruby1.9.2以前のversionだとエラーでる
なんなの
1.9.2以前のバグ
妹がか?
本当は見てるんだろう?正直に言ってみろよ
次のRubyKaigiに例のあの娘っ子を呼んでくれ
んで女性誌で特集を組んで
「Rubyで女子力アップ♪IT系男子に思いを__send__しちゃおう♪」
とかでおk
彼.__send__('掃除')
彼.__send__('洗濯')
彼.__send__('めしたき')
588 :
uy:2012/06/20(水) 09:39:09.89
俺はゴミカスだがエリートゴミカスだ
お前らのような下級ゴミカスとは格が違う
【IT】なにがプログラミング言語の存亡を分けるのか
http://anago.2ch.net/test/read.cgi/scienceplus/1340160153/ 「学術研究の分野では、抱えている人がいないような問題に関しても解決策を見つけようとする傾向がある」と
ラブキン氏は話す。「この分野では、利用法や必要性を考えずに一般からかけ離れた言語の開発を決定することがしば
しばある。そうしたプロジェクトのなかには、その言語についてのドキュメンテーションなど、もっとも基本的な事柄が欠けて
いるものもある。また、開発者が自分で作った言語に次々と新たな機能を追加することで、利用しようとするエンジニアに
負担をかけ過ぎることもある」(ラブキン氏)
「たぶん、この解決は全く困難なことというわけではないだろう」ともう一人の研究者であるレオ・メイェロヴィッチは言う。
「われわれは、他の人間が使うことをもっと意識した言語を作る必要がある」(メイェロヴィッチ氏)
プログラミング言語なんてもんはベッドで覚えるもんだってばっちゃが言ってた。
ラムダ使って女子力アップしてたら上司のコードレビューで
ちゃんと書き直せと一言言われて終わったorz
irbで曜日を入力してたら「金」が入力できないんだけど何で?
ruby 1.9.3p194 (2012-04-20) [i386-mingw32]
594 :
デフォルトの名無しさん:2012/06/21(木) 22:56:54.68
rubyは金にならないから
595 :
uy:2012/06/21(木) 23:39:53.68
Rubyには金玉がないから
597 :
uy:2012/06/22(金) 06:46:40.34
これで俺の勝ちだ
598 :
uy:2012/06/22(金) 07:46:44.07
俺が uy だ!!
599 :
uy:2012/06/22(金) 07:48:07.15
俺が法律だ
みんなツイッター行ったの?
人は、有能/無能と勤勉/怠惰の組み合わせで4タイプに分けられる
それぞれのタイプ別に
有能で勤勉: Lisp, Python
有能で怠惰: Haskell, OCaml
無能で勤勉: Ruby, PHP
無能で怠惰: Java, C#
に代表される言語を使うのが向いている
>>601 無能な人間に合わせてシステム作っておいたほうがいざって時に交換が聞くし
Ruby〜Javaあたりでシステム組むのは理にかなってるな。
Lisp で業務システム書ける人間なんか探してられんわ。
>>600 今時2chで情報収集してるヴァカはいねえよ
2chは嘘と釣りばかりになってしまったな
605 :
uy:2012/06/22(金) 10:31:02.49
俺は無能で無農薬だからRubyが合ってる
無能で勤勉な奴は射殺しろ、っていう格言でしょそれ。
無能で勤勉な奴を有効に使えるやつを上に立てないと破滅するってのが真理だと思う。
そんなやついやしないから射殺するしかないって話だよね
わかりやすい
無能で働き者のRubyとPHPはこの世から消えろ
まったくレスが無いのも寂しいのでたまに妹の話を書き込んでるが、
まぁ、2ちゃんの役目は終わりつつあるか、果たしつつあるか、
もとのアングラに戻りつつある
個人的にはこんな印象
有能で勤勉: Java, C#
有能で怠惰: Ruby
無能で勤勉: Python, Lisp, Haskell, OCaml
無能で怠惰: PHP
>無能で勤勉: Python, Lisp, Haskell, OCaml
これ Python は違うと思うけど(Rubyと大差ねえよ)、Lisp とか Haskell なんかは確かに無能カテゴリの方があってるかもしれん。
>>612 なんか4月辺りからめっきり専門スレの書き込みが減ったイメージ。
VIPのスレなんかは相変わらずだけど。
イメージではなく数値で示せ
じゃあ、コンパイラのソースコードの量で比べてみたら良いんじゃないかな。
コンパイラのソースコードの量が多い言語ほど、
コンパイラがプログラマの替わりにたくさんの仕事をしてくれる、
優秀な言語ってことで。
今の時代コンパイラのコード量よりライブラリの量が大事だと思う
コンパイラと他人がいかに働いてくれるかでその言語の優秀さが決まるよね
にしてもPerlの名前がちらりとも挙がらないあたり切なくなってくるな
Pearlだろ?
で、それ何?
いや、ここはPerlだろ。
BitbucketとGitHubでの言語別リポジトリ数
BB GH
Perl 397 47054
Python 5394 107523
Ruby 623 212421
宮川さんがたぶん40,000ぐらい書いてる
BB GH
Perl 397 47054
Python 5394 107523
Ruby 623 212421
perl6をさっさと出さないからこんなことに・・・・
CやC++がなかなか消えないのに
LLというのはさーっとフェードアウトしていくのね
DelphiやVisualBasicも同じだね
Turbo Pascal
VB6はある種COBOL的なしぶとさを残してるけどな。
Delphiは全然みないな・・・
629 :
uy:2012/06/22(金) 15:01:28.40
>>609 戦える部隊の形
1、有能な指揮官の下に有能な兵士
この部隊は根が強い
たとえ指揮官が不在の状況になっても戦えるであろう
2、有能な指揮官の下に無能な兵士
この部隊も強い
これは指揮官さえいれば、崩れることは無いし
無能であるがゆえに全ての指揮を呑んでくれるので
一部兵士を捨て駒のようにも使える為、
局面の戦闘においては1よりも強く、3よりは弱いといったところ
以下は、無能な指揮官には参謀をつけなければならないという意味で参謀をつけている
無能な指揮官の下に参謀がいなければその部隊はすぐに消滅する
3、無能な指揮官の下に有能な参謀と有能な兵士
これは形だけの指揮官をおいて、それを支える有能な参謀が
実質の指揮官役となり、さらにそれを補佐する兵士たち、
ある意味、最も連携が取れている素晴らしい部隊である
4、無能な指揮官の下に有能な参謀と無能な兵士
これは指揮官が参謀を信じている間ならばギリギリ戦えるラインである
もしも有能な参謀の意見をないがしろにした瞬間に一気に崩れるであろう
なんでドヤ顔でいまさらなコピペはってんの
次のCOBOLはRubyになる悪寒
632 :
uy:2012/06/22(金) 19:19:26.66
Rubyは俺が殲滅する
>>631 心配いらんよ
LL言語で作ったWebサービス系のシステムって寿命がものっそ短いし
なんか定期的に書き換えられてること多いから
Perlでそんなふうになってるシステム殆どないでしょ?
Rubyはわりと運がいい
Perl5.6がもっと「ベター」だったなら、Better Perlの座はなかったかもしれないし
PHPが4のアレなまんまだったなら、テンプレートエンジンの重荷を引き受けて潰れてしまったかもしれない(eRuby使ってる?)
Pythonがいなかったら、「真面目」なアプリケーションの受け皿がそもそも存在しなかった
ライブラリ的にはRailsとJRubyの影響は大きい(JavaでRubyを動かすなんて無意味で変態のやることだった)
へまや不躾もわりとしてるけどなー
確かにPerlが失墜しなければRubyもPythonも多分今ほどの隆盛は誇れなかったろうね
rubyには何の取り柄もないが運だけで生き残ってしまった
言語なんてそんなもんだよな
今のメジャーな言語なんてぶっちゃけどれ選んでも大差ないっしょ
昔perl使ってた奴らはどこいってしまったん
dankogai とかもう JavaScript のことしか喋ってないイメージ
Perlをヒアドキュメントを駆使したHTML出力CGI言語として使ってた人はPHPに行って幸せになったはず
なんちゃら.pm を作る方面にいって Perl に幻滅した層が Python だの Ruby に流れたのか
642 :
uy:2012/06/23(土) 09:09:45.90
イレブン.pm
643 :
uy:2012/06/23(土) 09:13:55.69
オッパッ.py
か.rb
uy.rb
ruby.
646 :
uy:2012/06/23(土) 11:55:03.49
おっぱいプル.pl
どういう基準だよww
649 :
uy:2012/06/23(土) 12:37:21.26
俺はゴミカスだがエリートゴミカスだ
お前らのような下級ゴミカスとは格が違う
uyの意図的にスレを腐らせる能力は正直すごいと思う
654 :
uy:2012/06/23(土) 13:06:22.46
ゴミ
655 :
uy:2012/06/23(土) 13:10:08.98
俺はゴミカスだがエリートゴミカスだ
お前らのような下級ゴミカスとは格が違う
uyのせいでRubyも腐っちゃったね。
658 :
uy:2012/06/23(土) 13:20:41.82
話しかけるなゴミカス
659 :
uy:2012/06/23(土) 13:21:18.47
ゴミ
おまいら喧嘩すんな
妹も見てるんですよ
"a,b,c".split(","){|i| puts i}
これ.each忘れてもエラーすら出してくれないけど何が起こってるの?
>>661 rubyでは全てのメソッドがブロックを受け取るけど
ブロックを処理しないメソッドの場合は何も起こらない
次から質問する時は初心者スレへどうぞ
663 :
uy:2012/06/27(水) 03:04:12.09
class String
alias s split
def split *h
if iterator?
s(*h).each do |*h| yield *h end
else
s(*h)
end
end
end
"a,b,c".split(","){|i| puts i}
p "a,b,c".split(",")
Programming Languages Benchmarks
ttp://attractivechaos.github.com/plb/ ってマイクロベンチがあるのですが
Rubyの正規表現ベンチで
ループ内の正規表現リテラルで式展開してて遅いので
英語の出来る人、指摘してきてくださいな
Pythonは 正規表現リテラルがないので、必然的にループ前にコンパイルされてる
Perlは 正規表現リテラルに oオプションが付いてて最初の一回しかコンパイルしない
>>664 きっと、
「リテラル表記を提供するなら
言語系はリテラルのflyweightな共有をサポートするべき」
というベンチマーク作者の意思表示なんだよ!
666 :
uy:2012/06/29(金) 07:21:24.36
分かりにくいRubyが悪い
668 :
uy:2012/06/30(土) 10:11:57.53
>>667 Rubyはマイクロベンチなんて意味無いって言う奴が多数派なんだから、
不適切な方法で計測されたマイクロベンチについてもスルーしてしかるべき。
反論するやつは愚の骨頂。
適切な方法で計測されたマイクロベンチの結果が出てたとして、それを受け入れるのか?
そもそもマイクロベンチ自体受け入れない、見て見ぬふりをするのがあるべき姿。
意味の有るマイクロベンチなら話は別だけどね
意味の有るマイクロベンチ = Rubyが勝てるマイクロベンチ
見たくない不利なデータを見なかったことにするゴミカスRuby
>>671は、昼間からレスがひとつもついてないということの意味をそろそろ真剣に考えてもいい頃だと思う
もうちょっとの我慢なのに・・・
言ってる意味が
matzって何でjava嫌いなの?
オラクルだから?
むしろどうやったらJAVAを嫌いじゃなくれるのか
ただの劣化C#
強引なマーケティングさえなければとっくにゴミ
uyはとっくに放射線廃棄物
Javaはちょっと産廃がかってきてるのは確かかもね
VMが優秀過ぎて捨てられないのがなんとも・・・・
まあ、そもそもの設計思想からしてドカタ言語なんだから仕方ない
それが狙ってそう設計されてるんだからな
俺が使ってる言語は自然言語だ
仕様書を書いておけば部下たちがその通りに作ってくれる
別にそれは間違ってない
SEだのPGはそのためにいるようなもんだ
自然言語できちんと仕様を記述できるなら、それは結構なことだね。
できていればw
俺が使ってる仕様記述言語はExcelだぜ
マイクロソフトだろ?
>>682 おまえさんところの客は自然言語喋らないのか
すげえな
客は要望を言うだけで、仕様を記述したりしてくれないからな。
客が全員 ルーピー鳩山なんだろ
お前のようなね
妹に「機械語って知ってる?」って聞いたら
「ポピ、ポピポペポペポピピポペポーってやつ?」
って返ってきて安心した。
なにそれカワイイ
妹はガッちゃんか
ぐふぅ
妹(35歳)
妹駆動開発
じんましんが出てきたから医者に行ってあれこれ検査ししたり
原因切り分け試みたりしてるんだが現因がわからず
結局原因はストレスってことになった
695 :
デフォルトの名無しさん:2012/07/05(木) 06:40:19.92
ストレスが地球を駄目にする
ストレスが女を駄目にする
スレストが2chを駄目にする
なんかこう…目からウロコのテクニックとか面白いライブラリとか紹介してよ
必要のないものを見栄えや知名度や名前だけでゴテゴテ入れてカッコイイとか思うような年齢でもあるまい
や、そういう年齢だったなら申し訳ないが
>>700 読み込むメソッドが見つからないんだけど
新規に書き出すだけ?
>>701 まだ作りかけっぽいね。parse メソッドで読み込めるっぽいけどコメントアウトされてる
Excelはwin32oleでやるのが一番
あのフォーマットを普通のエンジニアが扱えるとは思えないし
>>703 Windowsならそれが間違いないな。
spreadsheet て、まだ活発に開発してるぽいけど、誰か使っとらん?
数年前はちょっと微妙だったけど
>>703 だからこそExcelじゃなくてxlsxを対象にしてるってのが
先のライブラリのキモなんだろうな。
>>705 JavaのPOIとかに比べるとやっぱりいろいろ厳しいな
グラフとかマクロとかがないファイルを読むならいいんだけど
結局Ruby2.0って世代別GCは見送りなんだっけ?
GCは甘え
漢は黙ってフルGC
せこせことコンカレGCなんて女々しい
>>708 色々やってみたけど、ライトバリアのコストが思いのほか大きかったらしく
世代別にしても元が取れないとかいう話を
数年前に聞いた気がする
何も考えずに設計されたRubyはクズ
子供が喰っちゃだめなんだよなあ
これは脱法ものをコッソリ食べるしかないね
カンピロって鶏肉じゃかなったっけ?
牛からも出るんだ
.
妹がHerokuの使い方を勉強しはじめた
Peroku
俺も妹をPerokuしたい
どうでもいいけど
小学生の頃に母親に妹が欲しいと逝ったら
お父さんにお願いしなさい
と言われたのを思い出した
>>720が女の子で、お父さんに種付けしてもらいなさいってことか
どうでもいいけど
小学生の頃に母親に妹が欲しいと逝ったら
自首しなさいと言われたのを思い出した
QZとuyはお互いに尻の穴をなめる馬鹿ということおk?
724 :
uy:2012/07/17(火) 07:40:39.80
俺はおっさんより女子小学生が大好物だ
なんだuyは犯罪者か
131 名前:uy ◆pdu1UZmweE [sage] 投稿日:2012/07/05(木) 19:43:52.94
お前らは何かに熱中してるか?
おそらく何も熱中してないだろう
俺は女子小学生のパンチラにハマっている
お前らも熱中するものを持つと人生が豊かになるぞ
727 :
725:2012/07/17(火) 12:25:13.57
【訂正】
なんだuyは病気で犯罪予備軍か
個人が特定されてるわけじゃないから成立しないんじゃないの?
そもそも第三者が訴訟出来ない件
犯行予告も個人が特定されてなければ許されるんですって
犯行予告だとそうもいかないんじゃないの?
公表しなけりゃノゾキだって盗聴だって自由らしい
Ruby 2.0 ではEnumerable::Lazyがはいるので
無限にカウントアップするようなメソッドも新設して欲しい
Integer#counter(step=1) 見たいな感じのを
もしくはInteger::MAX を用意してくれれば
1.step(Integer::MAX, 2) で長大な奇数列が得られる
1.step(Float::INFINITY,2) だとFloatの数列になっちゃう
>>734 ハイテク進み心の豊かさ遅れる我が国の如何ともしがたいところ
なんてどうでもいいさ、いやよくない♪
Q. なぜ儲からないのでしょうか?
A. お金にならないことに時間を使っているからです。
739 :
デフォルトの名無しさん:2012/07/21(土) 20:44:40.11
ruby-list:48845 ってFrom詐称だよねぇ
matzがUTF-8で送るとも思えんし、Message-Idはチェコのドメインだし、
X-MailerがThunderbirdだったけど、普段のmatzのメール見てみたら
X-Mailer付いてないし(たしか自作のelispクライアント使ってたよね)。
メールの送信元IPアドレスは?
741 :
デフォルトの名無しさん:2012/07/21(土) 23:00:40.49
送信元アドレスというか、Receivedの最初のほうは
(これより上は配信部分なので省略)
Received: from beryllium.ruby-lang.org (beryllium.ruby-lang.org [127.0.0.1])
by carbon.ruby-lang.org (Postfix) with ESMTP id 9C0A13C229486;
Sat, 21 Jul 2012 16:43:16 +0900 (JST)
Received: from emkei.cz (emkei.cz [46.167.245.118])
by carbon.ruby-lang.org (Postfix) with ESMTP id D3BBE3C21F74B
for <
[email protected]>; Sat, 21 Jul 2012 16:43:14 +0900 (JST)
Received: by emkei.cz (Postfix, from userid 33)
id BBCF6D57F4; Sat, 21 Jul 2012 09:43:11 +0200 (CEST)
(こっちが古い)
なわけだ。CESTw
/:|)
そういえば↑これってなんなの?
Matzの一行AA
/ : |)
↑ ↑ ↑
髪 目 口?
英語圏の顔文字は、記号が少ないからだろうけど
あんまり出来がよくないイメージ
だいたい目がコロンかイコールかセミコロンで
口がPかDか括弧かパイプかってトコだよね
英語圏もutf-8を使えるから、
使える文字種は格段に増えたのでは?
アスキーアートという名前と合わなくなって
アスキーアートっていうよりスマイリーだねえ
うん、スマイリーを表わす固定文字表現だから、新規に作ろうとか改造しようとかいう考えがあまりない
カタマリとして捉えられていて、「これが目でこれが口で…」と当て嵌めて表情を咀嚼しているのではなく
「これはスマイリーのアレだ」という変換をしている
スマイリーがピンとこない日本人には、それこそピンと来ない
日本人が:)を使うとなんか気取ってる空気が漂うよね
あるいは:) < おめーとなれ合うの面倒だからもう返信してくれるな
という意味を含んでいると解釈してしまうね
751 :
デフォルトの名無しさん:2012/07/22(日) 14:57:40.31
同意を求められても。
そうだね:)
SMILY
^^ (煽り)
756 :
デフォルトの名無しさん:2012/07/24(火) 20:17:52.35
そうだよ。1.8の頃は hash = { :one => 1, :two => 2, :three => 3 } するしかなかった
そんなすっごい楽というほどでもなくもなくもない
シンボルに見えないものが実はシンボルになるというのは、頭を切り替えなければならないからそれほど便利でもないのだ
いわゆるキーワード風引数を書くとき専用みたくなってるな
引数のときなら、実際はナニなのかどうかとかを考えなくて済む
まぁRubyのなんだか恥ずかしい機能の1つだわな
稚拙で恥ずかしいruby
762 :
デフォルトの名無しさん:2012/07/24(火) 22:58:15.42
meth foo: :bar とか書くと、もうちょっとなんとかならんのかと思ってしまう。
JSをチラ見して美味しいとこ取りしたつもりが恥ずかしい感じになっちゃったよね…
>>763 ちょっと別の事を想像したのは俺だけじゃないはず
21 :Name_Not_Found:2012/06/15(金) 17:31:11.52 ID:???
jQueryとか使っちゃうと、document.writeとかプレーンな
javascriptでのコーディングに戻れないんだよな。。
22 :Name_Not_Found:2012/06/15(金) 17:37:36.52 ID:???
っていうかHTMLでdocument.writeとか使うなよ、アレはhello work的なモンだろ
23 :Name_Not_Found:2012/06/15(金) 17:40:39.10 ID:???
>>21 裸のJSを思い浮かべながらjQuery
これならいつでも戻れる
JSを生でくちゅくちゅ触る人は少なくなってきてるよね
RubyもRoRという例はあるがまだまだ生で使ってる人は多い
LLではクラスシステムを言語でサポートしなくても良い時代になってきてるのかな、という雰囲気がしてきてる。
何いってんだこいつ
クラスベースの「オブジェクト指向言語」の終焉なのだよ。
継承の化けの皮が剥がれ、それが一般に認知してきているのだよワハハハー。
ほんと何いってんだこいつ
死ね
JS on Railsが普及したらRubyおわり?
実装はいくつかあるみたいだけど。
グスタフでかすぎわろた
しっかり餌コントロールしてやらんと
糖尿病になっちゃうよ
JSを生でくちゅくちゅ触りたいです…
JSを触った感じの第一印象は「すべすべ」
意外と硬い
,,ノ´⌒`ヽ,,  ̄ ̄ ̄
__,. -┐ ,,γ⌒´ ゝ,,
_ ,. -‐ '' ´ :::::::::', / )⌒ヽ r::- _
:::::::::'、 / γ""´´⌒⌒``゙゙゙゙゙ \ `) /:::::::: ´` '
:::::::: / ノ ヽ ( ,.:':::::::
:: ( 彡 i )/:::::::
) i /\ /\ i (::'::::::::::
( ! ヽ / i ):::::::::
r⌒ (○)ヽ ( ○) ⌒i:::::
{ ( ヽ,,__,,ノ ノ ヽ.,,_,,ノ .) }\
/ \_! \ /( )\ !ノ`、 \
/ , ' 't / ^ i ^ ', / ヽ \
/ , ヽ _, -‐‐-、._ / ヽ \
/ , ' \_ヽ. ヽ ノ _/ \
/ , ' \. `ニニU´ λ. 、 \
./ , ' _,,ノ| 、` ‐-‐-‐/ ./ \ `、 \
_,,..r''''" ノ .| \ / / / ̄`'''ー
ruby・・・・・ 言語よりもRackやらフレームワーク使いの方が大変!
>>779 それは他の言語でも同様。
初心者スレへ銅像。
アンチスレもあるます
excelのVBAはどうにもやりにくい、もうやだ
excelでVBAを使わずにrubyですませられるようにできますか
出来ない
外からなら他のC#とか並には細かく操作できるけど多分そういうの望んでるわけじゃないでしょう?
Rubyは糞言語だから無理
できますん
>>783-784 やはり無理ですか
WIN32OLEを使ったことはあるんですが、excelから操作しにくいしね
えっ
Pythonおすすめデスヨ
>>782 WIN32OLE叩くのはいやってことか。
いくつか、xls のバイナリやらXMLやら直でいじるのあるけど、実用レベルなんかはよくわからん。
790 :
デフォルトの名無しさん:2012/07/27(金) 20:17:09.34
>>782 セルを参照して計算結果を書き戻す位だったら Spreadsheet クラスで十分ダナ。
2007形式のファイルは開けないけど。
VBAの代わりってことはExcel上のボタン押したらどうにかなるとかそういうのだろうし
そういうのにRubyは無理だよ
>>791 昔、artonさんがやってたActiveScriptRuby使えばできる気がするけど、
Excel単体じゃなくなるから相互運用性が必要なときに面倒っぽいな。
793 :
デフォルトの名無しさん:2012/07/28(土) 18:58:56.05
RubyとVBAはそもそもの言語設計目的が異なるし、比較は無意味じゃないかな
俺は言語に美しさを求めるからVBAに拒否反応してしまうが、オフィスワークでの有用性は認めざるをえない
しかしRubyは易しくて奥が深い素晴らしい言語だな〜
VBAは、例えばExcelの動作を記録してそれをカスタマイズするところから始まってるから
当然Excelとの親和性が高い
他の言語が入り込むなど無理
別に外のVBからだって普通に操作できるけどなあ。
C#から真面目に『正しい』Excel操作をやろうとするとCOMのリソース解放問題で地獄を見る。
コントロールを購入したほうが工数的に有利になるぐらい。
まあ、VBAはexcel界のCOBOLだな
(キリっ
RubyでExcelにアクセスすること自体は普通にできるし、そこは便利でいいんだけど
たまにWin32OLEでのExcelをラップするラッパーライブラリが欲しいことがある
今はwrap_excelってのを使ってて、それはそこそこ使いやすいんだが
何かほかにもオススメのラッパーライブラリってないかな?
RubyからPOIを叩く
Win32OLEはエクセル入ってないと動かないのがなー
ソースコードで最もよく使われる単語が明らかに
http://developers.slashdot.jp/story/12/07/29/0728218/ >>一方、「if」はRubyを除く9言語で5位以内に入っている。
>Rubyの上位はなんなんだ、とソースを見てみたら、
>
> 1 739641 end
> 2 263685 do
> 3 260162 def
> 4 228260 assert
> 5 206872 should
> 6 174484 1
> 7 147050 new
> 8 141169 equal
> 9 136831 a
> 10 133595 to
> 11 132846 0
> 12 130953 name
> 13 126375 if
テストコードがいっぱいやな。1がよくわからないけど
> end
意味:Rubyはオワコン
shouldって何ですか?
テストの時に使う
defもdoも頻出な時点でendが最上位なのは当たり前かもな、どちらもendで閉じるし
Pascalだとbeginも多そうだ
字句で見ればC系言語で波括弧が頻出なのは想像できるわけで
それがRubyではたまたま予約語だったから
カウントされてしまったってだけかと
閉じ括弧なら1文字で済むのに
でもshift+遠くの記号よりサクっと打てる配置の英字3文字のが早くね
いっていい?
このpaper糞つまらん。
閉じ括弧の種類が2種類あるって良いと思うよ
最近イテレータ内でcase文やifとか使ってendが連なった場合に
イテレータだけ { } で書く事もある
>閉じ括弧の種類が2種類ある
常に等価なら良いんだが、
{...}はdo...endに出来ても、
do...endは{...}に出来ないケースとかある。
痛すぎる言語
それが Rooby
ルビー鳩山
excel類似品は多いのだから
VBAを取っ払って、代わりにjavaやrubyを使えるようなものを出すと、
ひょっとして数年後に大ヒットしないかな
>>816 >LibreOffice では、以下のスクリプト言語がサポートされています。
>LibreOffice Basic
>JavaScript
>BeanShell (Java)
>Python
>>817 知らなかった、サンキュ
しらべてみます
LibreOfficeがMicrosoft Officeの代わりになるかというと、逆にかけ離れている
base以外はほとんど問題ないわMSOfficeイラネ
LibreOfficeなんか使ってると、Microsoft Officeも買えない貧乏人みたいで恥ずかしいわ
>>817 LibreOfficeって、旧OpenOfficeだったんですね
昔、installlしたことあるが ほとんど使わず、java使えるとは知らなかった
OpenOfficeがOracleの魔の手にかかったからLibraOfficeになったんだよな
まあ個人で完結するぶんにはLibraOfficeでなんら問題ないけど
客がそのデータじゃないと受け取らないからとかの理由でOffice入れてる層は
素直にMSから買ったほうがトラブルなくていいわ
あーあとOpenOffice時代は破線や点線がサポートされてなかったのが結構いやだったなあ
Wordのファイルを開いたらおかしなことになるんじゃない?
ある程度は開けるけどここRubyスレだから!
Libr[e]
この糞暑い中、体育館でプログラミングとか会議とかやってるんだ…w
180度曲げても折れないツメ採用のLANケーブルいいな。
うわ
832 :
デフォルトの名無しさん:2012/08/05(日) 11:34:17.75
Stringクラスで次の文字を取得する場合にnextメソッドがあるけど、前の文字列を取得する場合は、みなさんどうやってますか?
833 :
uy:2012/08/05(日) 13:57:08.83
p "c".bytes.first.-(1).chr
馬鹿には無理
835 :
デフォルトの名無しさん:2012/08/05(日) 19:46:49.76
RubyアソシエーションがRuby 1.9.3の保守開発をやってくれる人一名様を10月から半年間、報酬総額最大180万円で募集
http://www.ruby.or.jp/ja/news/20120806.html ・ 事業の実施体制(体制図などで具体的に)
・ C言語やRuby本体の開発経験
・ Rubyコミュニティへの貢献経歴
・ ML等で英語で遣り取りできる技能っぷり
・ 自分からの提案金額
などを提案書に書いて提出
個人や法人格でもOKだけど、ぶっちゃけ短いし安いのでお手空きな個人事業主(フリーランス)やってる人が好ましいかと思われる
それとも広告として割り切ってみる?
837 :
デフォルトの名無しさん:2012/08/06(月) 13:58:47.96
Ruby1.8というかRubyOnRails2.1で書かれたサーバのユーザインタフェース部分、DB変更がかかるんでリプレースすることになりそうなんだけど
Railsの改造したほうがいいのか別の環境に乗り換えた方が良いのか。
プログラマはPHPでスクラッチするから時間とお金ちょうだいとか言うんだが・・・
RubyとPHPはやめとけ
フルスクラッチするって安直に言い放つ連中はちょっとなぁ
んじゃプログラマをスクラッチするかっと。
でおk
PHPでスクラッチしたいという意図は、
要は前のRoR2.1のプログラムにバグがあった場合、それを今回修正することで
責任範囲が自分たちにのしかかってくるのを回避するため。
つまりは、金は改造分だけ、サポートは全システムみたいなことを恐れている。
どうせ全部振ってくるんだろ?だったら全部面倒見てやるから、うちらの
保証しやすいように金と時間をよこせや、ってことだ。
自分とこで保守しやすいようにいろいろ理由くっつけて書き直したがるフリーは結構多い
ホームページ制作会社もそう
リニューアルと称してごっそり作り直すことでカネをもらうのが狙い
_______∩_∩
/ ノ ヽ ( ノ⊂ ̄))) ̄⊃
/|ヽ (_ノ ._ ̄ 0'ヽ 0'
/ |ノ .) (_) ヽ i ( むしゃむしゃしていた。
∋ノ | /――、__ ./(∩∩) 草なら何でもよかった。
/ /| ヽ__ノ | / ./ 今は反芻している。
| ( | ( ’’’ | ( /
|__ヽ. L_ヽ Lヽ_ヽ
''" ""''"" "'''''" ""''"" ''" ""''"" ''" ""''"" ''" ""''"" "''
>>843 ああいうの、一行(ステップ)いくらで契約するのかな
ソースみるとやたら不要部分が多い
javascriptなど必要ないのに使ってたり
ソースを故意に読みづらくして客を逃がさない、なんてやつもいたな
他人がメンテ出来ない作りにするのは
囲い込みの基本中の基本だろ
Appleの常套手段
>>836 金出して雇う形でやろうってのは
凄く前向きな話だし、いいことだと思うんだけど、
価格が……。
フルタイムじゃなくて期間半年の中でのパートタイムで、
時間のある学部生さんやってみませんか?
ってコンセプトなのかな。
>>848 多分そうでしょう
コミュニティに名前を売るためのインターンみたいなもんだろね
>>836 あの糞コミュニティーに入れるとは思えないがwww
半年で180万円か
1日1パッチ
うーん、無理だw
>>849 いや、会社に金を落とさせることによって、就業中に Ruby いじる理由を用意する、っていうプロジェクトなんだよ。
Google の 20% ルールみたいのがどの会社にもあるわけじゃないから、金を出して 20% なり 30% なりを捻り出してやろうとしてるわけ。
何その諸葛亮孔明
>>852 なるほど。
その場合、会社側からは月あたり0.2人月で
自社でのSES契約をRubyアソシエーションから請けてるふうに
見えるのかな。
成果評価(≒納品物)とかの問題をスンナリ合意できるなら
上手くいくかもしれないね。
深読みしすぎ
単に**優秀な**学生さんか、もしくは土日夜間に自宅でやってくれるプロを
募集中ということでしょ
下火なRubyの必死な話題作りだろ
857 :
uy:2012/08/07(火) 12:49:03.54
rubyのソースコード理解するために良い本やサイト何かあったら教えてください
>>855 自宅でやってくれているプロは既にいるんだよ。
そこで敢えて金を出すと言ってる理由を考えろ。
859 :
デフォルトの名無しさん:2012/08/07(火) 20:00:10.79
860 :
uy:2012/08/07(火) 22:02:39.00
>>859 ググったらすぐ上に出てくるけど
流石に2004年の本って古過ぎない?
861 :
デフォルトの名無しさん:2012/08/08(水) 00:40:03.46
実のところYARV導入前のものなので古いのは確かだが、
実装の技法なんかは普通に参考になるよ。
matzバージョン番号についての認識舐めすぎだろ。
韓国人女性の半数がセクハラ暴行を経験…4割が顔見知り=韓国
韓国の就職ポータルサイト「サラムイン」は12日、同国の成人女性532人を対象に実施した、セクハラ性的暴力に関する調査結果を発表した。
半数を超える50.6%が「セクハラ、性暴行など性犯罪の被害に遭った経験がある」と答え、うち半数近くが「加害者は面識のある人物」と答えた。
複数の韓国メディアが報じた。
被害を受けた場所は、「道端」がもっとも多い29.4%(複数回答)で、交通機関(27.5%)、学校や塾、
事務室(22.7%)、飲み屋(15.6%)、静かな路地(14.5%)、階段やエレベーター(10.4%)だった。
多くの女性が性犯罪の被害を受けていたが、10人中6人(62.8%)は犯罪への対応方法が分からなかったり、不利益を恐れ、積極的な対応ができずにいた。
http://news.searchina.ne.jp/disp.cgi?y=2012&d=0416&f=national_0416_144.shtml
>>863 4割の人が正直に答えただけ
実際は遥かに多い
865 :
u:2012/08/08(水) 13:02:20.41
delegateで
メソッド名がfの時は委譲の後に__setobj__で
新しいオブジェクトを指定しても正しく動くんですが
http://ideone.com/JaoyM メソッド名がtestの場合は
なんか元のObject#testを参照してるようで
上手くいかないけど なんなの????
http://ideone.com/FI3FS てか__setobj__の正しい引数は
c.__setobj__ ( b )
のようだけど、それならメソッドfの場合は
c.__setobj__ SimpleDelegator.new( b )
でも正しく動いちゃってるのはなんなの?
Rubyの欠陥
>>865 Kernel.private_instance_methods.grep(/test/) #=> [:test]
Kernel#test って何だろ?
>>865 動いちゃってるのは単に
c→SimpleDelegator.new( b )で出来るデリゲータ→b
と二段階に委譲してるんじゃね?
自演か……
870 :
uy:2012/08/08(水) 20:58:31.59
871 :
uy:2012/08/08(水) 21:01:10.78
delegate.rbの50行目に
include kernelとあった
これをコメントアウトしたら正しく動いた
このinclude必要なの?なんなの?
872 :
uy:2012/08/08(水) 22:33:52.34
とりあえずinclude kernelは必要ってことにした路線で思考した
つまり
delegate.rbの76行目あたりのmethod_missingだ
2重に委譲した場合は
# target.respond_to?(m) ? target.__send__(m, *args, &block) : super(m, *args, &block)
この時点ではまだtestが定義されていない?ので
この時に
#target.__send__(m, *args, &block) これを行うと__send__でKernelのtestを呼んでしまう
respond_to?(m) はprivateもpublicも関係ないから
で、このときにprivate_methodsにKernel#testを元々もっているのはSimpleDelegator#のインスタンスだから
そこに委譲されている( b )にKernel#testはない。
target.test のようには呼び出すと、一度method_missingが呼ばれて
method_missing再帰が起こる
そして次の
target = self.__getobj__
では
Kernel#testをもっているオブジェクト == self で、それの .__getobj__ を呼ぶので
c.__setobj__ SimpleDelegator.new( b ) の ( b )の部分のオブジェクトが帰ってくる
で、このbにはpublic、にのみtestメソッドが存在しkernel#testは存在しない
で結局何が言いたいかというと
その部分をevalで書き換えたら動いた
target.respond_to?(m) ? eval("target.#{m}( *args , &block)") : super(m, *args, &block)
873 :
uy:2012/08/08(水) 22:46:16.22
現在のコードは
・kernelに存在するメソッド名では2重委譲が上手くいかない
・kernelに存在しないメソッド名ならば2重委譲が上手くいく
これは引数のチェックをしてエラーを出すか
__setobj__ に SimpleDelegator.newが渡されるような状況がきてしまっても
動くようにすべきだと俺様は思った
c.__setobj__(c)
のような場合においては
raise ArgumentError, "cannot delegate to self" if self.equal?(obj)
ここに引っかかってエラーはでるようになっていたが、引数のエラーチェックはそれしかない
874 :
uy:2012/08/08(水) 23:08:00.16
あ、違う よく考えたら
__getobj__や__setobj__をもっているほぼそっくりで似たようなオブジェクトを委譲しようとしても
これは失敗するから2重委譲させる事はありえなくて、
76行目のところのmethod_missing内でもう一度method_missingが呼ばれてしまったら
その時点でこれはエラーにすべきだと俺様は結論付いたんだけど?
世間の関心をつなぎとめる話題とか定期的に出さないの
最近はmruby、来年はRuby2.0が控えてるから
まあ定期的にイベントは発生してる方じゃないの
877 :
デフォルトの名無しさん:2012/08/09(木) 05:30:04.45
>>874 うまくいかないのは最初のmethod_missingのtarget.__send__が
targetのprivateな:testを呼び出せてしまうから
二発目のmethod_missingが呼ばれないせいだろ
878 :
uy:2012/08/09(木) 06:57:47.78
2発目が呼ばれてはいけないんだよそれは
begin
ensure
end
はあるがrescueがかかれてない
書き忘れと予想
ただ単に2重委譲が動くか動かないかの問題じゃなくて
Simpledelegateと同名のメソッドをもつ全く違う挙動のクラスを渡した場合に爆発するよそこ
879 :
uy:2012/08/09(木) 07:50:49.58
Rubyの欠陥である
881 :
デフォルトの名無しさん:2012/08/09(木) 11:20:26.98
>>879 1〜10行は一見正しく動いているように見えるが、
c.test を c.__send__ :test の形式で呼び出そうとするとKernelモジュールの:testを呼びにいってしまう
Kernelモジュールのメソッドをオーバライドしたオブジェクトに対するSimpleDelegatorが、
この時点でもうダメなんだよ
16行目以降とはまた別の問題
>>881 それは__send__はそのままでsendを再定義するのが正しい気がする
__send__を使うような人は自力でなんとかするべき
883 :
デフォルトの名無しさん:2012/08/09(木) 12:57:05.38
>>882 SimpleDelegatorの場合には具体的にどうしろと?
>>881の問題に関しては、SimpleDelegatorは加害者であり被害者でもあるの。
SimpleDelegatorが、Kernelモジュールのメソッドをオーバライドしたオブジェクトに対して、
__send__がうまく動かないオブジェクトを生成する。
そして、SimpleDelegator自身が、上記のような__send__が動かないオブジェクトに対して、
__send__を使う可能性がある。
>>883 いっそmethod_missingの__send__をpublic_sendに変えちゃったら駄目かなあ
privateメソッドを呼べなくしちゃう
publicで再定義した場合は普通に呼べる(
>>865の下の例みたいなやつ)
あ、protectedが動かなくなるか
こんな感じ
869 名前:デフォルトの名無しさん [sage]: 2012/08/08(水) 20:52:25.26
自演か……
875 名前:デフォルトの名無しさん [sage]: 2012/08/09(木) 01:23:40.13
世間の関心をつなぎとめる話題とか定期的に出さないの
876 名前:デフォルトの名無しさん [sage]: 2012/08/09(木) 01:36:17.53
最近はmruby、来年はRuby2.0が控えてるから
まあ定期的にイベントは発生してる方じゃないの
880 名前:デフォルトの名無しさん [sage]: 2012/08/09(木) 09:05:44.18
Rubyの欠陥である
884 名前:デフォルトの名無しさん [sage]: 2012/08/09(木) 14:16:02.30
>>883 いっそmethod_missingの__send__をpublic_sendに変えちゃったら駄目かなあ
privateメソッドを呼べなくしちゃう
publicで再定義した場合は普通に呼べる(
>>865の下の例みたいなやつ)
やったね5レスの中に選ばれたよ
>>875 > 世間の関心をつなぎとめる話題とか定期的に出さないの
美女ruby、(美女カレンダーを真似たやつ)
小中学生ruby学校、ruby大会
詰めRuby
昔、詰めviって流行ってたよな
>>883 Delegatorのmethod_missingは
・デリゲータ自身がそのメソッドを持ってたらselfに__send__
・持ってなかったらtargetに__send__
・targetも持ってなかったらsuper
ただし
・Kernelのprivateメソッドは概ねモジュール関数だからそれらはundefしてしまう
って感じかなあ
デリゲータに存在するメソッドは再定義出来なくなるわけだけど、
・to_sなど一部のメソッドは元々undefしてある
・object_idとかclassはデリゲータのを呼んで欲しい
・methodsとかはデリゲータで再定義してそれ経由で委譲先のも呼んでる
・testとかは問題なくなる。その代り本来の用途で使いたくても委譲先頼りになる
protected関係はどうあるべきかよく分からないから適当
あ、これだとprivateメソッド無制限に呼んじゃうか
もうちょっと考えないと
protectedまで呼べるけどprivateは呼べないsendがもし有ったらmethod_missingでそれを使えばいいんだろうけど、
無かったらきれいに解決する方法は無さそうな気がしてきた
HDDをあさってたら96年頃のmatzの写真がでてきたお
>>886 だいたい同じ
なにがなんだかわからんこともあるが、どうせ間違ってるか意義がないかどっちかなのでどちらにしても表示させる理由はない
uyに拒絶反応起こしてる人がいるみたいだけど
結構名無しでも書き込んでるし、
その名無しuyに対して、結局レスもらったりレス返したりやってると思うよ
そこら辺は気持ち的に大丈夫なのですか?
uyに拒絶反応起こしてる人がどこにいるんだ
uyは自意識過剰、まで読んだ
俺はuyだけど、まで読んだ
中途半端な知識で声のでかい奴とか業界の癌だし、拒否反応起こすのも仕方無い
DLLの呼び出しの話なんかは、
中途半端どころか知識が欠如してたuy
902 :
uy:2012/08/13(月) 21:27:26.30
ぼくのかんがえた最強構文があるんですみてください
# then iterator block ...
if 5 then | n |
p n # = > 1
end
# then times ...
if 5 then.times do | n |
p n # = > 1 2 3 4 5
end
# unless else map iterator ...
b =
unless [1,2,3]
else.map do | n |
p n * 2 # = > 1 2 3
end
p b # = > 2 4 6
# object if ...
[1,2,3].if 10 then | a , b |
p a # = > 1 2 3
p b # = > 10
end
903 :
uy:2012/08/13(月) 21:28:44.69
# object if else ...
[1,2,3].if false then | a , b |
else | a , b |
p a # = > 1 2 3
p b # = > false
end
# proc case
d = []
f = -> n { n == 2 }
case f
when 1
d << 1
when 2
d << 2
when 3
d << 3
end
p d # = > [1 , 2]
# for ...
for [1,2,3]
print $_ # => 1 2 3
print # => 1 2 3
end
みてくださってありがとうございました
904 :
uy:2012/08/13(月) 21:30:48.60
あ、。
これは。、
# then iterator block ...
p n # = > 5
これでした。、
単にコテハンウザいってだけの話じゃないの
わーお...調べた結果、エスケープは\だったんですね...
ありがとうございました
908 :
uy:2012/08/15(水) 19:00:43.98
質問なんですけど、このコードって問題ないですよね?
なんかこんな感じのコード混ぜたら一定確率で落ちて [BUG] Segmentation faultでたんですけど
(GCをオフにしておくと落ちない 気がする)
f = ->{
p 1
}
tmp = f.clone
f = ->{
tmp.call
p 2
}
f.call
自分の足を食べるタコ
8月15日に攻撃対象へ指定されていた、日本のコミュニティサイト 「 2ch 」 は現在スムーズに稼動している。
インターネットカフェ ネトテロデウンヨンハプ は14日、光復節当日(8/15)、日本のコミュニティサイト 「 2ch 」 を対象とした
集団サイバー攻撃の計画を立てた。 計画が出ると、このカフェでは、(2ちゃんねるへの)攻撃に参加するというネチズンたちが列をなした。
しかし、このカフェは、15日早朝、突然の計画を取り消した。
カフェは、 『攻撃予定日は9月ですが、光復節(8/15)に日本サイトの攻撃はない』と公示した。
詳細 2012/8/15 ソース韓国語 inews24
http://news.inews24.com/php/news_view.php?g_serial=682052&g_menu=020310
書き捨てのスクリプトって英語とかでなんか言い方無い?
使い捨ての【形】
disposable
expendable
just-in-time
no-return
non-reusable
one-trip(容器などが)
one-way(容器などが)
single-use
toss-away
quick-and-dirty scripts が近いような気もするけど他にないかな
検索結果の個数順だとこう。testはちょっと違う。
test script 1430000
quick-and-dirty script 129000
temporary script 10500
disposable script 1450
QAD script 73
QnD script / qnd script 27
ありがとう
quick-and-dirty ってやっつけ仕事って意味か
作り方がやっつけかどうかより今後も継続的に使うかどうかって観点だとtemporaryのほうが良いかな
junk script
移行が完了っていっても gcc 「を」 C++ で書きなおしたってだけの話じゃん
それに限定された一部の組み込みでもない限り C ででかいプロジェクト新規でおこすところなんて
今時考えられないが
C++はCと比べて遅いし実行ファイルが大きい、という印象しかない
お前そんなこというと twitter あたりの闇の軍団にぼっこぼこにされんで
Rubyよりは速い
かかってこい
>>921 >twitter あたりの闇の軍団
「gitがCで書かれててクソ」「modernにC++で書き直すぜ!!」
→名前空間の名称を決めたところで頓挫
という展開はちょっと面白かったです>闇の軍団さんたち
926 :
デフォルトの名無しさん:2012/08/22(水) 21:56:49.39
今年のクリスマスプレゼントは何でしょうか?
ありがとうございます。
そういう状態のgemがあるんですね。
931 :
uy ◆gXFLM6waxs :2012/08/26(日) 08:34:28.77
今日から心を入れ替え綺麗なコテハンになります。
アメリカで韓国産貝類から「うんこ」 販売禁止措置
現在、韓国から日本へ大量の養殖魚類や貝類が輸出されている。当然安いからである。そのため、日本の養殖業者は壊滅的なダメージも受けている。
既に日本でも、韓国産魚介類から、うんこ垂れ流しの海域の養殖場の魚介類から、病原菌や寄生虫が検出され、山形県では寄生虫による食中毒事件も引き起こしている。
奈良の料理人が韓国産ハモは最高の美味であると報道した新聞社も料理人も糞便のことは知っているのであろうか(うんこ喰っているから美味?)。
(ハモは沿岸域の水深100メートルまでの水域に生息する鰻の仲間=ウナギ目・ハモ科)
米国ではFDA(食品・医薬品規制局)が、既に韓国産の貝類の生鮮〜缶詰に至るまで、流通業者に対して販売禁止措置を取った。その理由は、
カキ(牡蠣)などを食して、食中毒事件が発生したわけではなかった。
その理由とは、韓国産の貝類から人糞(うんこ)が検出され、ノロウィルスなど人由来の病原菌により、食中毒事件を引き起こす恐れがあるからとの理由であり、
FDAの通知書にそのように記載(下部に原文あり)されている。販売禁止措置が取られているものは、生ものだけではなく、加工品・缶詰類に至るまで徹底している。それに比べ日本は・・・。
日本では、韓国産貝類が、アメリカではこのような措置が取られようが、関係ないとばかり、何の対策も講じない。ましてや、日本での韓国産養殖ヒラメで食中毒事件が発生しているにも関わらず、
何故韓国産魚介類の輸入制限をしないのだろうか。松下政経塾政権の暖かい韓国への思いやりであろうが、そうした思いやりなど韓国民は屁とも思っていない。そのことは大統領自らの行動と言動で証明させている。
韓国でも次のとおり報道されていた。米食品医薬品局(FDA)は2012年6月14日、韓国産のカキ、貝、ムール貝、ホタテなどの貝類が、人糞などに汚染され食中毒を引き起こす恐れがあるとして、
流通業者に販売禁止を通告した。韓国農林水産食品省は、米国に輸出している主な貝類がカキであることから、現場点検などを実施した上で、カキの収穫時期である10月までに再輸出したい考え。
韓国産貝類の対米輸出量は、今年だけで4,970トンにのぼり、日本、中国に継ぐ主な輸出先とされる。
http://n-seikei.jp/2012/08/post-10636.html
933 :
右翼 ◆gXFLM6waxs :2012/08/27(月) 07:11:07.49
復活しました
今日からまたクズに戻らせていただきます
右翼乙
コピペして回ってるアホがうざいんだけど
ruby2.0って何が凄いんですか?
Ruby 2.0を使うと
韓国産貝類から「うんこ」を検出できる
てめぇがうんこだ
Ruby 2.0で
>>937を検出できました!!!
explicitとrestrictが実装されます
940 :
uy:2012/09/06(木) 19:28:45.92
module A
@@a = 2
p class_variables
end
module B
include A
p class_variables
p @@a
end
>[:@@a]
>[]
>2
これって、
include Aされたらmodule B内の class_variablesで@@a取得できるべきじゃないの?
942 :
uy:2012/09/07(金) 01:12:00.93
それが世界の選択か・・・
#ruby 2.0.0dev (2012-09-07 trunk 36920) [i386-mingw32]
module A
@@a = 2
p class_variables
end
module B
include A
p class_variables
p @@a
end
>[:@@a]
>[:@@a]
>2
2.0のキーワード引数って
単なるハッシュ引数なんで
Pythonとかみたいに
def foo(a=1,b=2,c=3): return a+b+c
print(foo(10,20,30))
print(foo(b=20))
二番目の引数だけ指定したいとかできない
Rubyのキーワード引数は通常の引数とは別物なので
常にハッシュで渡さないとならなくなる
def foo(a:1,b:2,c:3) a+b+c end
puts foo(a:10,b:20,c:30) # => 60
puts foo(b:20) # => 24
p method(:foo).parameters # => [[:key, :a], [:key, :b], [:key, :c]]
p method(:foo).arity # => 0
foo(10) # => wrong number of arguments (1 for 0) (ArgumentError)
ハッシュ引数の受け取りが楽になるのとTypo検出されるのがメリットなんだろうけど
なんだかなぁ
>def foo(a=1,b=2,c=3): return a+b+c
>print(foo(b=20))
>二番目の引数だけ指定したいとかできない
へー
まだdev版だしな。リリース版ではさすがにそんなクソ仕様は直すだろ
p Time.gm *"2002-03-17".split("-")
この*ってどういう文法なんですか?
最後の引数の直前に * がついている場合、その引数の値が展開されて 渡されます。展開はメソッド to_a を経由して行なわれます。つまり:
p Time.gm("2002", "03", "17")
と同じです。
横レスだけどそれJavaでやるにはどうすれば?
>>949 そりはだね、Javaスレで
>>947,948をコピペしてから
Rubyではこう書けるけど、これをJavaでやるにはどうすれば?
と質問するのがいいのではないかと思われる
ただし、嫌味な奴だと思われて無情なレスされてもおら知らんけど(w
引数の書き方ってリファレンスマニュアルに載ってないんだな
ほんとだな
いや、そこに無いって言う話だが?
何が無い?
引数の書き方
呼び出しのときの引数の書き方なら最初に書いてあるだろ
>>948の*の使い方とかも書いてある
それともメソッド定義の仮引数の書き方が無いってこと?
文法みると引数の括弧必須のように見えるけど、例には括弧省略したのが載ってる
引数の区切りに「,」はいらないの?
とか謎リファレンス
片山さつき「修学旅行の行き先を韓国に選ぶ学校ですが、土下座旅行に近い事が判明しました」
http://engawa.2ch.net/test/read.cgi/poverty/1347252281/ 片山氏が調査を進めると、韓国への修学旅行での訪問先に、信じがたい場所が選ばれていることが分かった。
日本海側の私立高校K(男女共学)が、今月末に予定していた韓国修養会(修学旅行)のレジュメによると、
訪問先に「戦争と女性の人権博物館」や「ナヌムの家/日本軍『慰安婦』歴史館」とあり、
説明に「日本軍性奴隷(日本軍慰安婦)とされた人々の苦悩の深さと日本軍の扱いの実態を知ることができる」
と書かれていたのである。
片山氏は「これはひどい。日本政府が発見した資料からは(慰安婦に)軍や官憲の強制連行を示す
証拠がなかったことは閣議決定されている。
教育の一環である修学旅行で、日本政府が『事実と違う』と抗議していることを学ばせようと
していたのではないか。『教育の自主性』では許容できない。
国益に反する洗脳教育が行われる危険がある」と語った。
私立高校Kは6日、保護者などの強い抗議を受けて、修学旅行先を韓国から国内に変更することを発表した。
同校が予定していた訪問先には、「西大門刑務所歴史館」や「安重根義士記念館」など、
日本や日本人に敵意や憎悪を植え付けるような場所も並んでいた。
片山氏は「K校だけとは思えない。インターネットを見ると、似たような修学旅行をしている学校がありそうだ。
背後に、国内の『反日組織』が関与している疑いもある。早急に実態を調べたい」と語っている。
http://www.zakzak.co.jp/society/politics/news/20120910/plt1209101131001-n1.htm
┌──────────────────┐
| |
│ _ ∩ |
│ ( ゚∀゚)彡 おっぱい! |
│ ( ⊂彡 おっぱい! .|
│ | | |
│ し ⌒J |
│ |
│ Now Oppaing. .... .|
│ そのままおっぱいでお待ちください。 |
└──────────────────┘
それ以前にそれが引数だとはどこにも書いてない
根県の竹島の領有権などを巡って日本と韓国との関係がぎくしゃくするなか、韓国の商工会議所が日本と取り引きのある国内の企業を対象に調査を行ったところ、
韓国を訪れる日本人観光客が減るなどして、影響が出ていることが分かりました。
韓国の大韓商工会議所は、先月末から今月初めにかけて、日本と取り引きのある国内の500社を対象に調査を行い、およそ6割の企業から回答を得ました。
その結果、日韓関係の冷え込みによる影響を受けていると答えたのは全体の12%で、業種別に見ますと、観光業では29%、日本車の輸入販売代理店では26%、
食品業では20%に、上っています。
このうち、観光業では、韓国旅行を取りやめる日本人団体観光客が増え、大手旅行代理店が損失を被ったと回答したほか、食品業では、
日本に調味料を輸出しているメーカーが、売れ行きが3分の1に激減したなどと答えています。
一方、日韓関係の悪化が長期化した場合については、65%を上回る企業が憂慮すると回答しています。
今回の調査からは、今のところ日韓関係の影響を受けている企業は限られているものの、今後に対する懸念が広がっていることが伺えます。
http://www3.nhk.or.jp/news/html/20120911/k10014954501000.html
根県って何だよ
韓国のものを買う必要性を感じないし韓国に行く必要もない
キチガイに反応すんな
自演にそんなこと言われても
と自演が申しております。
ジ・エンド
C4H6
Rubyでマルチプラットホームな
シューティングゲームは作れますか?
可能かどうかで言えば可能ですが、それほど楽な作業でもないと思われます
Rubyと提携先のGUIシステムの両方に事前に精通していればなんとか
俺ならRuby抜きで、マルチプラットフォームゲーム製作可能環境そのもので始めるね
そうRubyでやる必要性がない
シューティングゲームは たとえ ですが
出来るというのならちょっとやってみます
RubyではGUIを作れないから
結局他の言語を覚える必要が出てきて無駄
Ruby/SDL
Ruby/SDLの問題点
遅い
RubyはCと比べて5〜50倍程遅いため、速度を要するもの、例えば3Dのゲームなど の制作は難しいと思われます。
JSは結構速いね
JavaScript+HTML5+CSS3なら今後役立つ
速度必要だけどLLでOpenGLを簡単にって用途なら
RubyよりもPython(+pyglet)マジおすすめ
速いっちゃはやいけどスマフォだとやっぱりネイティブにはぜんぜん及ばない
Rubyが既にバリバリに使えるならRubyバインディング学ぶ理由もあるけどねえ
982 :
uy:2012/09/14(金) 21:16:34.54
ゲームで遅いのはオブジェクトの移動とあたり判定なんだよ
描画の速度はスクリプト言語も静的言語も速度は基本的に変わらない
3Dも2Dもライブラリ側でやらせるならスクリプトかネイティブかは関係なし
それは描画ライブラリが、ネイティブな言語で作られてるからの話。
スクリプト言語が遅いのは、速度が必要なところがネイティブで作られていることからも明らか。
竹島問題で韓流スターが消える?
韓国の李明博(イミョンバク)大統領が竹島に上陸して以降、日韓関係が悪化しています。この影響は政治だけでなく、
エンターテインメント業界にも響いています。K−POP旋風はブームの域を超え、一ジャンルとして定着しつつ
ありましたが、ここに来て“韓流はずし”の流れが起きているのです。
芸能界への影響、ジワジワと
李大統領が竹島に上陸したのが8月10日。その直後にはロンドン五輪の男子サッカー
3位決定戦で、試合後に韓国選手が「独島は我々の領土」というボードを掲げる事件を起こしました。その後、同14日
には李大統領が天皇陛下に謝罪を要求する発言をしたことで、一気に対立構造が鮮明になりました。
エンタメ界で具体的にアクションが起きたのは、BS放送の2局が放送していた韓国のドラマを延期したのが最初です。
これは出演していた韓流スター、ソン・イルグクが竹島を目指す水泳リレーに参加したのが理由でした。それ以外にも、
ジワジワと影響は出ています。
K−POP歌手が出演したある音楽番組には「なぜ韓国人を出すんだ」という苦情が数百件寄せられたそうですし、
大手レコード会社は新たなK−POP歌手の日本デビュー発表を予定していたのですが、それも無期限延期になったと
聞きます。さらに、韓国人スターが出演するCMは軒並み放送が控えられています。
ある芸能関係者は「事態はかなり深刻です。民放ではすでに、CMの関係から韓国人を出演させない動きが起きています。
いまの状況が続けば、コンサートも今後は開きづらくなるでしょう」と話していました。昨年は東方神起、KARA、
少女時代の3組が出場した年末のNHK紅白歌合戦から、K−POP勢が消える可能性もあります。
http://www.yomiuri.co.jp/otona/people/artiste/20120912-OYT8T00726.htm?from=osusume