開発する内容によるとは思いますが、一般的にPerlとRubyを比較した場合にどのような長短があるんでしょうか?

何を基準としてどちらの言語を選択したらよいか教えて頂けますと助かります。

なお開発環境のOSはLinuxです。

以上、よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

Perl が Ruby に比べて決定的に強いのは、情報量の多さでしょう。



一般の書籍や Webサイトの情報、また、提供されるパッケージなど、桁が違います。
また、いざ人員が足りない、というときに Perl できる人は結構集まるでしょうけど、
Ruby だと、そうはいかないですよね。

# *きちんと* できる人が集まるかどうかは別の問題

Ruby が Perl に比べて強いのは、きちんとしてオブジェクト言語になっている、
ということかしら。

開発量が増えてくると、その効果が出てくるはず。


私は、数年前から頭の中がオブジェクトになってしまっているので、私なら
迷わず Ruby を選ぶところなのですが、複数人のチームで、ということに
なると、Ruby を選択できるか、難しいですね。

# ひとことでは難しい、という意味で自信無しにしておきます
    • good
    • 0
この回答へのお礼

回答ありがとうございました。

お礼日時:2002/01/16 08:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QActiveScriptRubyについて

rubyそのものの質問でなくて申し訳ありせん。
WindowsにてActiveScriptRubyを使用しております。

http://www.geocities.co.jp/siliconvalley-PaloAlto/9251/ruby/
の記述にて、「できること」に「WScript, CScriptからのRubyスクリプトの実行」とあったので試してみたのですが以下の様なエラーが出て動作しません。

Win XP 2台、Win Vista 1台で試しましたが同じ結果となりました。


http://www.artonx.org/data/asr/ から
Ruby-1.9.3-p125.msiをインストールして、%ruby_install_dir%\binにパスを通してrubyを使用しておりますが、CScript(或いはWScript)からrubyを動作させるには他に何か設定が必要なのでしょうか?
お解りになる方がいらっしゃいましたらご回答をお願い致します。


コマンドプロンプトから実行しています。
D:\ruby>ruby -v
ruby 1.9.3p125 (2012-02-16) [i386-mswin32_100]


D:\ruby>ruby hello.rb ←これは普通に動作します。


D:\ruby>cscript hello.rb
Microsoft (R) Windows Script Host Version 5.7
Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

入力エラー: ファイル拡張子 ".rb" を持つスクリプト エンジンはありません。

D:\ruby>wscript test.rb ←同じエラーのメッセージウィンドウが出ます。

rubyそのものの質問でなくて申し訳ありせん。
WindowsにてActiveScriptRubyを使用しております。

http://www.geocities.co.jp/siliconvalley-PaloAlto/9251/ruby/
の記述にて、「できること」に「WScript, CScriptからのRubyスクリプトの実行」とあったので試してみたのですが以下の様なエラーが出て動作しません。

Win XP 2台、Win Vista 1台で試しましたが同じ結果となりました。


http://www.artonx.org/data/asr/ から
Ruby-1.9.3-p125.msiをインストールして、%ruby_install_dir%\binにパスを通してruby...続きを読む

Aベストアンサー

D:\ruby>cscript //E:rubyscript hello.rb

と、//E オプションでスクリプトエンジン名を指定してください。

Qcgi言語のperl利用方法を教えて下さい

自宅のPCはwindows7です
サーバーはunixです。

(1)perl言語のインストール方法
  何処から、どれをダウンロードするのか良く分かりません

(2)apacheで自分のpcをサーバーに見立てる方法
  何処から、どれをダウンロードするのか良く分かりません

プロンプトで実行させる方法も分かりません。
c:\yser\kuniharu>
と表示され
c:\
にする方法が分かりません

教えて下さい。

Aベストアンサー

では……

>apacheのダウンロードは出来ましたがインストールが出来ません。
>ファイルを回答したよ良いのですが、インストールエグゼが有りません。

msiファイルはそのままでイントール用のパッケージですから、setup.exeとかはありません。
強いて言えばWindowsにインストールされているハズのWindowsInstallerのexeでしょうか。
設定いじって.msiの関連付けを変更していたりするのであれば元に戻してください。
なお、DLしたのはどのファイルでしょう?
# cgi関連で2.2.x系と2.0.x系でそう差違もないとは思われますが。

で……サーバとクライアントどっちですか?
もしかしてそこから説明必要なんてことはないですよね?

unixサーバにセットアップしてあるApacheからクライアントにイントールしてあるperlとクライアントに置いてあるperlスクリプトをcgiで使おう!!
なんてのは果てしなく無理なんですが理解されていますよね。
# 理解していないのであれば、とりあえず『無理です』と答えておきますが。

>active perlもダウンロードしましたが、昔と違いインストール方法が分かりません。

こちらも.msiだと思いますが…別のを拾ってきたのなら.msiの方を拾ってきてください、
ダブルクリックでインストールが始まるはずです。
# ブロックの警告が出るかも知れませんし、Windows7なのでUACの警告も出るかも知れません。
# よろしく対処してください。
インストール先をC:\の直下にする…のはどうなんでしょうかね。
# ちなみにウチではD:\直下にしましたが。

unix系サーバにcgiを配置する場合はパーミッションなどに気をつける必要がありますがWindowsの場合はunix系に置くときとは別なのでその辺りはご注意を。
# NTFSでの権限が問題になる…かなぁ……あまり聞かないけど。

「Windows Apache CGI」で検索すれば、こんなバカな回答者よりも親切に解説してくれているところもあるでしょう。

では……

>apacheのダウンロードは出来ましたがインストールが出来ません。
>ファイルを回答したよ良いのですが、インストールエグゼが有りません。

msiファイルはそのままでイントール用のパッケージですから、setup.exeとかはありません。
強いて言えばWindowsにインストールされているハズのWindowsInstallerのexeでしょうか。
設定いじって.msiの関連付けを変更していたりするのであれば元に戻してください。
なお、DLしたのはどのファイルでしょう?
# cgi関連で2.2.x系と2.0.x系でそう差違もないとは思われ...続きを読む

Qruby1.9からtwitterライブラリをインストールするとエラーに

ruby1.9からtwitterライブラリをインストールするとエラーになってしまいます。

環境はWinxpです。

H:\Program Files\Ruby-1.9.1\bin>gem install twitter

と、すると、以下のエラーメッセージが・・・。

Building native extensions. This could take a while...
ERROR: Error installing twitter:
ERROR: Failed to build gem native extension.

"H:/Program Files/Ruby-1.9.1/bin/ruby.exe" extconf.rb install twitter
creating Makefile

nmake
'nmake' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。


Gem files will remain installed in H:/Program Files/Ruby-1.9.1/lib/ruby/gems/1.9
.1/gems/yajl-ruby-0.7.5 for inspection.
Results logged to H:/Program Files/Ruby-1.9.1/lib/ruby/gems/1.9.1/gems/yajl-ruby
-0.7.5/ext/gem_make.out


-------------------

ちなみに、


H:\Program Files\Ruby-1.9.1\bin>gem install twitter4r

とすると、インストールは出来ます。

ただ、requireでtwitterを読み込もうとすると

「msvcrt-ruby18.dllがありません」

と言うエラーになってしまいます。


助けていただければ幸いです。

ruby1.9からtwitterライブラリをインストールするとエラーになってしまいます。

環境はWinxpです。

H:\Program Files\Ruby-1.9.1\bin>gem install twitter

と、すると、以下のエラーメッセージが・・・。

Building native extensions. This could take a while...
ERROR: Error installing twitter:
ERROR: Failed to build gem native extension.

"H:/Program Files/Ruby-1.9.1/bin/ruby.exe" extconf.rb install twitter
creating Makefile

nmake
'nmake' は、内部コマンドまたは外部コマ...続きを読む

Aベストアンサー

twitter インストール時、以下のようにすればうまく行きますよ。
gem install twitter -v 0.7.0
また、twitterのバージョンは作者のホームページで確認出来ますよ。

Qピンポイントロト6のようにミニロトの1等を確実に当選するソフトを開発したいのですが開発の手順が分かりません

ピンポイントロト6のようにミニロトで1等を確実に当選する従来のミニロト予想ソフトとはまったく異なるソフトを開発したいのですが、開発の手順が分からず困っています。教えてください。

Aベストアンサー

ピンポイントロト6の説明を見てみましたが、こんなものを1万円以上出して買う人がいるとは信じられませんね。

このソフトのからくりは、
・全通りの組み合わせを買えば必ず1等が当たる
・みんなで違う数字を買えば、1等が当たる可能性が大きくなる
まったくその通りですが、「あなたに」1等が当たる可能性が大きくなるわけではありません。
全組み合わせを購入すると、約12億円かかりますが、1等が当たっても2億円から4億円しか入ってきません。
それに、何で1等が当選していると言っているのに、1等の券の写真が無いのでしょうか?
2億の現金を積み上げるだけでも結構な宣伝効果があるはずなのにね。
また、実績0で買ってくれる人がそれほどいるとは思われないので、ある程度参加人数や購入口数を水増ししていることも考えられますね。

で、あなたがこのソフトを作ろうとすれば、データベースとネットワークアプリケーションをキチンと勉強すれば1ヶ月程度で作成可能かと思います。
言語はC#、C++、JAVA何でも良いでしょう。

あなたが新しい理論を考えて作るというならば、その理論がわからないと何とも言えません。
相対性理論や量子力学を覆す理論の論文を書きたいけれども、その理論がわからないと言っているのと同じです。

ロト6などの予想では、確率や統計を持ち出してもっともらしいことを言っていますが、出る数字に偏りがあるのなんて当たり前のことなのです。
逆に均等に出ている方が不自然です。
このあたりは、確率・統計を少し勉強すればわかると思います。

また、人間が数字を選ぶ場合は、ランダムな数字を選ぶことはあまりありません。
たいていは隣り合った数字を避けるなどしてしまい、ある程度の偏りが出ます。
なので、当選確率で統計を取ってみても、実はあまり意味はありません。

このようなものにお金を使ってしまわないためには、確率・統計を勉強することをお勧めします。

ピンポイントロト6の説明を見てみましたが、こんなものを1万円以上出して買う人がいるとは信じられませんね。

このソフトのからくりは、
・全通りの組み合わせを買えば必ず1等が当たる
・みんなで違う数字を買えば、1等が当たる可能性が大きくなる
まったくその通りですが、「あなたに」1等が当たる可能性が大きくなるわけではありません。
全組み合わせを購入すると、約12億円かかりますが、1等が当たっても2億円から4億円しか入ってきません。
それに、何で1等が当選していると言っているのに、1等の券...続きを読む

QRubyでexeファイルをつくるExerbについて

RubyでexeファイルをつくるExerbというライブラリをインストールしたいです。

でとりあえずやってみたところどうやらうまいぐあいにインストールできていないようです。
現象としては、普通にExerbの最新版5.30を落として適当なディレクトリに配置

コマンドプロンプトからruby setup.rbでExerb内のsetup.rbファイルを実行するとコマンドライン上でインストールが進みます完了後コマンドプロンプトでexerbを実行しても
内部コマンド~~とお決まりの文章がひょうじされて実行できません。
ruby.exeはパスが通ってるのでPC内のC:/ruby/binの中をみたところexerbファイル(※中身はRubyコード)は存在しますがどうやらexerb.exeファイルが生成?されてないようです。

一応http://sourceforge.jp/projects/exerb/releases/50337にあるようにRubyコアの
バージョンをあわせて実行したのですがどうしても、うまくいきません。
原因はなんなのでしょうか?

識者の方、ご教授お願いします。

ActiveRubyとかいう実装の方をインスコすればデフォルトで実行できるようなのですが
もともとインストールしていたRubyがrubyinstaller-1.8.7-p330ですので、なんとか
このRubyで実行させたいのです。
よろしくお願いします。

RubyでexeファイルをつくるExerbというライブラリをインストールしたいです。

でとりあえずやってみたところどうやらうまいぐあいにインストールできていないようです。
現象としては、普通にExerbの最新版5.30を落として適当なディレクトリに配置

コマンドプロンプトからruby setup.rbでExerb内のsetup.rbファイルを実行するとコマンドライン上でインストールが進みます完了後コマンドプロンプトでexerbを実行しても
内部コマンド~~とお決まりの文章がひょうじされて実行できません。
ruby.exeはパスが通って...続きを読む

Aベストアンサー

C:/ruby/binの中にgem.batとかirb.batという名前のバッチファイルがあると思います。
この一つをコピーしてexerb.batという名前のファイルを作成してください。

QMS メーラーの長短

マクロソフトの3種類のメーラーがあるけど(office含め)長所・短所詳しい人教えてください

Aベストアンサー

#3です。

>おすすめのメーラーはなんですか、またその理由もお教えください

Mozilla Thunderbirdです。
http://mozilla.jp/thunderbird/
http://mozilla.jp/thunderbird/features/

機能説明などを見て頂くと判りますが、すべての機能において、フリーとは思えない安全性と利便性を有しています。
オープンソースとして世界の開発者が係わっていて、今も順次開発が進んでいます。

エンジンが、Firefoxと同じgeckoエンジンなので、そのカスタマイズ性や拡張機能の利用による機能付与は、他のメーラの追従を許さないです。
リリースから7年になりますが、Office OutlookやOutlook Expressからのユーザーの移行を狙って開発が始まったものです。
http://mozilla-remix.seesaa.net/category/1233319-1.html

Qwin版Rubyインストールパッケージの名称が思い出せません

Windows版Rubyの質問です。

前回、別マシンに、ruby1.8.7 p249のインストールパッケージをインストールしたのですが、そのパッケージの名前とサイトアドレスを失念してしまいました。

activescriptrubyではなく、他のものです。
perlでいう Action Perl のようなパッケージで、rubyのパスの設定などを自動でしてくれるものです。
windowsのスタートメニューのruby 1.8.7 p249から、 ruby gemsやruby用のコマンドプロンプトが選択できるようになるものです。

どなたかご存知の方、「これじゃないの?」というのがあれば、何でもかまいませんのでご教示いただければ幸いです。

ぐぐったのですが見つかりませんでした。

Aベストアンサー

これじゃないの?

スクリプト言語“Ruby”をWindows環境へ簡単に導入できる「RubyInstaller」
http://www.forest.impress.co.jp/docs/review/20100302_351032.html

QRubyの正規表現について教えてください

配列に文字列を格納し、先頭が大文字または数字の文字列だけ別の配列に入れようとしています。
次のようにプログラムを作ったのですが、ifの行でエラーが出ます。
何が間違ってますか?
mojiretu_array.each{|mojiretu|

if mojiretu =~ [^a-z]\w+
mojiretu_out.push mojiretu
end
}

Aベストアンサー

間違いが2つあります。(考え方を含めたら3つ)

・正規表現は、スラッシュで囲んでください。

・\w などの文字集合メタキャラクタは、単に「[文字集合]」と書くことの略記方です。

ですから、「[^a-z]\w+」という正規表現は、「[^a-z][A-Za-z0-9_]+」と書いているのと同じことです。

おそらく、「[A-Za-z0-9_]から[a-z]を抜いた物」というつもりで書かれたのでしょうが、上記のように展開・解釈されますから、あなたの考えたとおりには動きません。
(「[^a-z]\w+」は結局、「先頭がa~z以外で、英数字が続いたもの」という意味になります。)

素直に

if mojiretu =~ /^[A-Z0-9]/

と書いてみてください。

上記は、最初の ^ で「先頭」を表し、次の[A-Z0-9]で、「英大文字または数字のいずれか1字」にマッチします。
合わせると、「1文字目が英大文字または数字」という部分だけ、チェックしているわけです。

2文字目以降は、英小文字でも数字・記号・空白類があっても構わない訳ですから、マッチさせる必要がありませんよね?

もし行末までマッチさせるなら、

if mojiretu =~ /^[A-Z0-9].*/

と書くことになりますが、結局同じ意味です。

間違いが2つあります。(考え方を含めたら3つ)

・正規表現は、スラッシュで囲んでください。

・\w などの文字集合メタキャラクタは、単に「[文字集合]」と書くことの略記方です。

ですから、「[^a-z]\w+」という正規表現は、「[^a-z][A-Za-z0-9_]+」と書いているのと同じことです。

おそらく、「[A-Za-z0-9_]から[a-z]を抜いた物」というつもりで書かれたのでしょうが、上記のように展開・解釈されますから、あなたの考えたとおりには動きません。
(「[^a-z]\w+」は結局、「先頭がa~z以外で、英数字が続いたも...続きを読む

Qrubygemsとruby twitter gem ライブラリーを読み

rubygemsとruby twitter gem ライブラリーを読み込もうとすると
エラーになってしまいます。

------

require 'rubygems'
require 'twitter'

エラーメッセージ

H:\Program Files\Ruby-1.9.1\bin>gem ruby 1.rb
ERROR: While executing gem ... (RuntimeError)
Unknown command ruby
H:\Program Files\Ruby-1.9.1\bin>
-------------------

Winxpです。

ご指導のほどお願いします。

Aベストアンサー

単に

ruby.exe 1.rb

の間違い、ということ?

QRubyで、cairoを使って描画したい

プログラミング経験は、エクセルVBA程度です。
ネットで、Rubyでの描画を調べていたところ、下記のソースを発見。
cairoなるものが必要なようで、調べながら環境を整えてみました。
最初はターミナルから実行するとエラーが出ていましたが、現在はエラーが出ません。

環境は、MacOSX ruby 2.0.0p451

他の簡単なプログラム(helloworld表示など)は問題なく動きます。
エラーが出ずに実行できるということは、
画像の出力だけがうまく行っていないのでしょうか?

お知恵を頂けたら幸いです。

※以下、動かしたいプログラム(ネット上で発見したものです)

#!/usr/bin/env ruby

require 'cairo'

format = Cairo::FORMAT_ARGB32
width = 300
height = 200
radius = height / 3

surface = Cairo::ImageSurface.new(format, width, height)
context = Cairo::Context.new(surface)

context.set_source_rgb(1, 1, 1)
context.rectangle(0, 0, width, height)
context.fill

context.set_source_rgb(1, 0, 0)
context.arc(width / 2, height / 2, radius, 0, 2 * Math::PI)
context.fill

surface.write_to_png("hinomaru.png")

プログラミング経験は、エクセルVBA程度です。
ネットで、Rubyでの描画を調べていたところ、下記のソースを発見。
cairoなるものが必要なようで、調べながら環境を整えてみました。
最初はターミナルから実行するとエラーが出ていましたが、現在はエラーが出ません。

環境は、MacOSX ruby 2.0.0p451

他の簡単なプログラム(helloworld表示など)は問題なく動きます。
エラーが出ずに実行できるということは、
画像の出力だけがうまく行っていないのでしょうか?

お知恵を頂けたら幸いです。

※以下、動かした...続きを読む

Aベストアンサー

クリーンインストールではなくて、homebrewでインストールした部分だけの再インストールです。
私自身はhomebrewを一度インストールしたことが有りますが、私の目的には問題があったので消してしまいました。
従ってほとんどhomebrewについては理解できていません。

以前他の質問で回答したのですが、その時の原因がhomebrewで依存関係で必要なパッケージがインストールされていなくて動かないということでした。homebrewはなるべくシステムでインストールされているものを使うこと信条としているとのことで、たまたま依存パッケージの指定を忘れていたのかなと思ったりしていました。そのようなことが今回も有りそうな感じがしています。
インターネットで同じようなことがhomebrewでおこってるのか調べて対処する必要があるかもしれません。

MacPortsやFinkも同じようなことが起こりえるのですが、これらは逆にシステムでインストールされているものを信用しないという信条です。どちらが良いかは分かりませんが。

解決方法としては、homebrewで同じようなことがおこっていないか、その対処法をしらべること。
もう一つは、コンパイル済みのバイナリファイルをインストールしているなら、ソースファイルからコンパイルしてインストールする指定がhomebrewでできるのでしたら、それをやってみる方法です。これだと依存パッケージが抜けている場合にはエラーでインストールが止まってくれるはずです。バイナリファイルの場合は依存パッケージがなくても、パッケージ作成者が指定を忘れていてもとりあえずはインストールが成功するはずですので、実行するまで分からないことになりそうです。

その前に、homebrewでインストールされているパッケージを最新の状態にアッデートすれば解決するかも知れません。あくまでも作成者が気がついていたらですが。

クリーンインストールではなくて、homebrewでインストールした部分だけの再インストールです。
私自身はhomebrewを一度インストールしたことが有りますが、私の目的には問題があったので消してしまいました。
従ってほとんどhomebrewについては理解できていません。

以前他の質問で回答したのですが、その時の原因がhomebrewで依存関係で必要なパッケージがインストールされていなくて動かないということでした。homebrewはなるべくシステムでインストールされているものを使うこと信条としているとのことで、た...続きを読む


人気Q&Aランキング

おすすめ情報