トップページ⇒tech
1001コメント292KB

【Perl,PHP】LLバトルロワイヤル4【Ruby,Python】

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2009/02/15(日) 03:18:33
最強のLL=軽量プログラム言語は、どれよ?

エントリーは、
Perl、PHP、Python、Ruby、JavaScript・・・
さあ、死ぬまで語りやがれ!!!
0263デフォルトの名無しさん2009/02/23(月) 10:34:18
>262
確かに何でだろうな。
数が少なきゃ、フォーマット文字列.replace()で何とかなるけど、ちと限界あるし。
0264デフォルトの名無しさん2009/02/23(月) 18:39:53
javascript + PHPがおすすめ。
PHPはRubyかPythonに置き換えてもいい。

jsは今後絶対はずせなくなる。
0265デフォルトの名無しさん2009/02/23(月) 18:57:42
>>262
むしろsprintfがあるほうが珍しいのでは。
シェア的には多数派だけど。w
0266デフォルトの名無しさん2009/02/23(月) 19:10:06
>>262
オブジェクト指向だと文字列は普通に+で連結するだけじゃね?
ああ、%2.1dみたいな書式作りたいのか。
0267デフォルトの名無しさん2009/02/23(月) 19:47:12
%2.1dって構文はありなの?
0268デフォルトの名無しさん2009/02/23(月) 20:07:05
Pythonとかの%02dとかは普通にありがたいけどなぁ。
数字を文字に変換しなくても、そのままフォーマット変換できるのは楽は楽だし。
+の連結とは使い勝手が全然違うとオモ
0269デフォルトの名無しさん2009/02/23(月) 20:07:40
>>266
書式もそうだけど、単純に見やすさ、いじりやすさもあるよ。
・・・オブジェクト指向って?
例えばRubyで悪いけど、

tag = '<input type="text" class="' + css_class + '" name="' + name + '" value="' + value + '" />'
tag = %Q'<input type="text" class="#{css_class}" name="#{name}" value="#{value}" />'
tag = '<input type="text" class="%s" name="%s" value="%s" />' % [css_class, name, value]

JavaScriptは一番上の書き方しかできない。
それが一番見やすい・いじりやすいっていう人が多数派なんだろうか
0270デフォルトの名無しさん2009/02/23(月) 20:34:39
いや%dに"2.1"を指定するのはなんか違和感があった
%fならともかく
0271デフォルトの名無しさん2009/02/23(月) 20:35:54
>>269
tag = <input type="text" class={css_class} name={name} value={value} />.toXMLString()
0272デフォルトの名無しさん2009/02/23(月) 20:45:31
xml以外はどうしたらいいんだ?
0273デフォルトの名無しさん2009/02/23(月) 22:32:25
>>272
name = 'John'
str = <dummy>My name is {name}.</dummy>.text()

XMLリテラルキモいw
0274デフォルトの名無しさん2009/02/23(月) 22:54:20
JavaScript に strftime() が欲しい。
0275デフォルトの名無しさん2009/02/23(月) 23:21:46
>>273
<>My name is {name}.</>
でOK
ちょっとだけキモさも和らぐw
0276デフォルトの名無しさん2009/02/24(火) 01:38:44
http://d.hatena.ne.jp/uupaa/20080301
http://hacks.bluesmoon.info/strftime/

JavaScriptでsprintfとstrftime
0277デフォルトの名無しさん2009/02/24(火) 12:38:01
>>275
HTMLのSCRIPTタグ中に書けないじゃん。
0278デフォルトの名無しさん2009/02/24(火) 12:56:20
>>277
書けたよ (FireFox 3.0.6)

<script type="text/javascript">
var name = 'John'
var xml = <>My name is {name}.</>
alert(xml) // alert(xml.toString()) と同義?
</script>

E4Xっての初めて知ったけど、IEは対応してないんだ?
0279デフォルトの名無しさん2009/02/24(火) 13:18:05
いつの間にかJavaScript勉強スレになってるな
0280デフォルトの名無しさん2009/02/24(火) 19:10:58
>>278
htmllintとかでチェックすべき。

ブラウザは受け入れるだろうけど、
HTML(SGML)的には不法のはず。
0281デフォルトの名無しさん2009/02/24(火) 22:52:51
XMLリテラルってscalaにもあるみたいね
これらの言語使ってる人、こんなの使ってる? (意味不明)
ヒアドキュメントより更にコードに違和感ありまくりで、あんまり
有り難みがないような気がする
0282デフォルトの名無しさん2009/02/25(水) 00:30:22
>>280

<script type="text/javascript">
<![CDATA[
var name = 'John'
var xml = <>My name is {name}.</>
alert(xml) // alert(xml.toString()) と同義?
]]>
</script>
0283デフォルトの名無しさん2009/02/25(水) 05:25:39
>>282
https://developer.mozilla.org/ja/E4X

>さらに CDATA セクション (<![CDATA[...]]>) は CDATA リテラルとしてパースされませ
>(HTML の <script> 要素は暗黙の CDATA セクションを作りますが、そこには明示的
>な CDATA セクションを含めることができないため、これは HTML において JS 構文エラーを引き起こします )。
0284デフォルトの名無しさん2009/02/25(水) 08:09:15
>>283
XHTMLで書けばいいだけ
0285デフォルトの名無しさん2009/02/25(水) 08:50:28
> XMLリテラルってscalaにもあるみたいね

V B . n e t  に も あ り ま す

C # に は あ り ま せ (
0286デフォルトの名無しさん2009/02/25(水) 12:39:22
Rhinoってどうよ?
0287デフォルトの名無しさん2009/02/25(水) 23:33:59
importClass(java.io.PrintWriter);
importClass(java.io.BufferedWriter);
importClass(java.io.FileWriter);

var file = new PrintWriter(
      new BufferedWriter(
        new FileWriter("sample.txt")));

file.println("Rhino犀強伝説");
file.close();
0288デフォルトの名無しさん2009/02/25(水) 23:37:32
わざわざ冗長に書き過ぎじゃなかろうか、Rhino知らんけど
0289デフォルトの名無しさん2009/02/26(木) 00:00:53
importClass(java.io.PrintWriter);

var file = new PrintWriter("sample.txt");

file.println("これだけでよかったのか、まだ勉強不足だ");
file.close();
0290デフォルトの名無しさん2009/02/26(木) 00:03:39
それなんてJava、っていうネタじゃなかったのか
0291デフォルトの名無しさん2009/02/26(木) 01:39:17
>>262
String.format()
0292デフォルトの名無しさん2009/02/26(木) 01:53:16
C#?
0293デフォルトの名無しさん2009/02/26(木) 02:05:08
>>291
[JavaScript-C 1.6.1 2008-03-01]

js> print("".toLowerCase)
function toLowerCase() {
[native code]
}
js> print("".format)
undefined
0294デフォルトの名無しさん2009/02/26(木) 10:56:50
もう21世紀だというのに・・フォーマットとか小文字だとか大文字だとか・・だりぃな
0295デフォルトの名無しさん2009/02/26(木) 11:17:15
デフォルトの書式を XML で定義しておくとか。
デフォルトで case insensitive にして必要に応じて case sensitive にするとか。
0296デフォルトの名無しさん2009/02/26(木) 16:57:13
高水準言語
0297デフォルトの名無しさん2009/02/26(木) 21:41:54
VB.NETは進化の方向性を間違えたなって思う。
C#と棲み分けするためにRubyやGroovyのような言語に進化するべきだったと思う。
0298デフォルトの名無しさん2009/02/26(木) 21:47:31
C#やVBのM$言語もLLに入るの?
オープンソースかアカデミックな連中だけで盛り上がってて、
商用お断りみたいに思ってんだけど
0299デフォルトの名無しさん2009/02/26(木) 21:49:45
Java系等のはカス扱いで。
0300デフォルトの名無しさん2009/02/26(木) 22:11:26
>>298
いや入らない。
ただVBはLL方向へ進むべきだったという話をしているだけです。
0301デフォルトの名無しさん2009/02/26(木) 22:21:34
LLの定義論うざい。
そもそもLLはRuby基準で立場が近いかどうかが問題だ。
厳密な定義は必要ないし、そもそもRuby使い以外はLLなんて言葉はつかわない。
0302デフォルトの名無しさん2009/02/26(木) 22:23:42
なんかわけわかんねぇ文章だな。
Rubyに近いほど、よりLL。
あまりにもRubyより簡単すぎたらLLじゃない。
0303258=2602009/02/26(木) 22:35:51
>>294
高校生のとき21世紀には、CADのようにGUIで部品を結線するだけでプログラムが
出来る時代が来ると思っていました。
0304デフォルトの名無しさん2009/02/26(木) 22:44:49
デスクトップ時計とかカレンダーみたいな小物なら
C#ならまさにRADでポトペタ、プロパティ設定だけで
コーディングなしでできるがな。

(もちろん、色々細かいことやろうとしたらコーディングは必要だが)
0305デフォルトの名無しさん2009/02/26(木) 22:55:31
HTML、MXML、XAMLとか画面を作るだけなら
プログラミング言語の出番では無くなりつつあるような。
もちろんポトペタを実現するソフトの力もあるけど。
0306デフォルトの名無しさん2009/02/26(木) 23:55:19
>>303
それって、RPGツクールだけでRPGがとか、
シューティングツクールだけでシュー(ry
格闘ゲ(ry

というのと変わらん妄想な気がする。
結局こったことやろうとすると、ツール上でプログラミングしないといけなくなるんだよな
0307デフォルトの名無しさん2009/02/26(木) 23:58:45
まあ、妄想とはいったけど今の段階ではということで、
30年くらい先は変わるんだと思う。
RPGツクールも新しいのは Ruby乗っかってるし、
ジャンル特化のゲームエンジンにちょっと汎用的なDSL入れた、見たいな構成なんて、
今時のゲーム開発じゃ珍しくない。

web周りがまだ続くんなら、ポトペタ系webフレームワークがでたっておかしくない。

・・・CodeGea(いやなんでもない
0308デフォルトの名無しさん2009/02/27(金) 00:04:15
Plagger とか Yahoo! Pipes とか Popfly とかその辺のこと?
0309デフォルトの名無しさん2009/02/27(金) 01:40:28
どんどん新しい技術が出てくる時代だからね。UI言語みたいなものよりテキスト言語じゃないと融通が
きかなくて対応できないだろうね。
でもいずれ何十年も先に技術も安定して規格化も進めば、UI言語みたいなものも発展できるかもね。
0310デフォルトの名無しさん2009/02/27(金) 02:17:24
用途は限定されるけど、結線でUIを構築するなら、Quartz Composerってのがあるね。
文字列の回転角度などのようなプロパティは、直接指定する必要はあるけど、基本、結線するだけで、リアルタイムで結果を表示してくれるよ。

Mac限定だけど
0311デフォルトの名無しさん2009/02/27(金) 02:21:08
ぶっちゃけGUIとCUIに向きと不向きがあるのと一緒で
何でもポトペタで楽にってのは幻想だと思う

マウスやゲームパッドで漢字の人名を入力することを考えてごらんよ
超面倒くさいだろ?
電卓だって、GUIの電卓よりCUIのがずっと使いやすい
0312デフォルトの名無しさん2009/02/27(金) 02:31:44
グラフィカルな存在を扱うケースでは、グラフィカルに設計できるのが一番では
絵を書くときには誰だって筆を使う
PostScriptを直接書くというケースは多くないだろう
0313デフォルトの名無しさん2009/02/27(金) 02:37:03
>>312
うんだから向き不向きってことね
ダイアログエディタみたいなGUIが向いてるものはどんどんGUI化すればいいが、
実際には既にかなりのものがGUI化されているだろう
それ以上は疑問だね
0314デフォルトの名無しさん2009/02/27(金) 02:41:41
>>311
それはGUIだからじゃなくてマウスだからじゃない?
0315デフォルトの名無しさん2009/02/27(金) 06:29:26
touch(panel/pad)て昔からあるけど
DesktopPC用には普及してないな
0316デフォルトの名無しさん2009/02/27(金) 07:34:35
高いからだろ
0317デフォルトの名無しさん2009/02/27(金) 09:32:58
>>316
そういって参入して死々累々なのがタッチパッドインタフェース。
タッチパッドが悪いというより、なぜか指で操作させようとするのが
敗因だと思うけど。ペン操作は普及したし。
0318デフォルトの名無しさん2009/02/27(金) 09:41:48
タッチパッドはタッチパッドで、結構進化して来てるよ。iPhoneとか、なかなか面白い動きをする。
ペンタブレットはあれはあれで、実は「細かい点の操作」に弱いって欠点があるんだな。
マウスやタッチパッドは、ポイント→その位置から動かさないでクリックって動作がしやすいんだけど
ペンタブレットだとそうも行かない。一応、少しだけ浮いた状態でポインタが出るんだが、それでも狙った位置からはブレやすい。
0319デフォルトの名無しさん2009/02/28(土) 00:38:29
タッチパネルとタッチパッドは別もんだな
タッチパネルは、もし安く高性能なものが普及しだしたら、それなりに便利だと思う
マウスでクリックしすぎると指が痛くなってくるけど、そんなとき画面をペンでポチって
できるのは、作業中の気分転換にいいかもw
0320デフォルトの名無しさん2009/02/28(土) 01:31:43
で
何の話だっけ?
0321デフォルトの名無しさん2009/02/28(土) 03:01:32
>320
PerlもPythonもRubyも大きなテコ入れをしている件について
0322デフォルトの名無しさん2009/02/28(土) 03:10:31
米国でRuby関連書籍の売り上げが減速か
>2008年第4四半期の売り上げで、前年同期比965%増という大躍進を遂げているのはObjective-C。
>ほかにActionScriptも33%増と好調。逆に落ち込みが激しかったのはRubyで、51%減となっている。
>ほかに落ち込みの大きい言語としては「JavaScript(24%減)」、「Visual Basic(15%減)」、「Perl(25%減)」、「Java(12%減)」などがある。
http://www.atmarkit.co.jp/news/200902/27/langs.html
0323デフォルトの名無しさん2009/02/28(土) 04:05:25
まあ別にいらないしな
0324デフォルトの名無しさん2009/02/28(土) 04:06:47
>> 322
ruby本の落ち込みは、railsは一時的なブームだったということかな?
Objective-Cはiphoneアプリの開発言語だよね。macの売り上げも伸びたんだろうね。
phpは相変わらず人気だね。
0325デフォルトの名無しさん2009/02/28(土) 06:11:51
Rubyはソース嫁に辿り着く
0326デフォルトの名無しさん2009/02/28(土) 07:34:42
Rubyは対話式インタプリタだから生きるものかもしれないな。

コード補完機能を備えた優秀な開発環境があれば
別にコードが冗長でもかまわないわけだし。

Pascalみたいにコンパイル速度が速ければ
インタプリタである必要もないし。

Rubyで使い捨て以外のプログラム書く理由がないわ。
0327デフォルトの名無しさん2009/02/28(土) 08:54:46
>>322
iPhoneの影響か。
長らくNeXT及び、その後継であるMac OS Xの専用言語に近い状態だったが、2007年に入り、Apple社の携帯電話iPhoneにおいてCocoa touchフレームワークの記述言語として採用。習得者の人口が増える傾向にある。
0328デフォルトの名無しさん2009/02/28(土) 09:05:04
Railsの流行も落ち着いてきたということだろう。もう4年もたつしな
0329デフォルトの名無しさん2009/02/28(土) 10:28:12
オンラインで読めるマニュアルとかチュートリアル、解説サイトが充実していれば本なんかいらんけどなあ。
ちょっとググレば出てくる情報に3000〜円とか出したくないし。

まあ、手元においておきたいときも、ないことはないけど。

本が売れてるって、実は言語(フレームワーク)そのものが使いにくいからじゃね?なんてうがった見方をしてみたり^^;
0330デフォルトの名無しさん2009/02/28(土) 10:40:55
それはうがってるんじゃなくて、(Ruby信者として)もがいてる感じ。
0331デフォルトの名無しさん2009/02/28(土) 11:52:14
本買う行為はお布施だと思えば仕方が無いかな
0332デフォルトの名無しさん2009/02/28(土) 11:57:00
ひたすらに現世利益を求める衆生にはそれがわからんのだな
0333デフォルトの名無しさん2009/02/28(土) 12:12:56
お布施は信者以外には理解不能だからなぁ
0334デフォルトの名無しさん2009/02/28(土) 13:17:15
Rubyとか互換性皆無で一年前の情報がゴミになるからな。
他言語でもRails風フレームワークも増えてきたし、
敢えてRubyにこだわらなくてもいいような。
0335デフォルトの名無しさん2009/02/28(土) 14:14:09
教祖様は気分で仕様変えるし、
メンテナはすぐヘソ曲げるし、
コミュニティの殆どは「誰か働けよ、中傷してやるからよぅw」モードだし、
普通に考えてRubyに価値があるわけないよね。
0336デフォルトの名無しさん2009/02/28(土) 15:27:46
PHPはやはり強いな。
初めにやったもん勝ちなんだよな、こういうのは。
0337デフォルトの名無しさん2009/02/28(土) 18:37:40
Rubyの方が昔からあったような気がする
0338デフォルトの名無しさん2009/02/28(土) 20:32:57
まあ、シェア奪ったもん勝ちってことだろ。
0339デフォルトの名無しさん2009/02/28(土) 22:32:21
>>335
Rubyの教祖様ってPHPをさんざん叩いてた人じゃないの?
当のRubyはそんな有様だから足引っ張ってんのか?ww
0340デフォルトの名無しさん2009/02/28(土) 23:59:35
PHPはウェブアプリのコーディングしてて「こんなのないかな?」っていう
関数は既に用意されてることが多いからやっぱ強い(自作関数だらけにもならんし)。
ヴォキャブラリーの力が圧倒的だから
まあウェブ用途では当面代替になりそうな言語はないね。
0341デフォルトの名無しさん2009/03/01(日) 00:22:09
PHPよか、Rubyの方が柔軟に書けそうに見えるんだけど気のせいか?
パッと見でPHPって、Webで使う用のCにしか見えないんだけど
0342デフォルトの名無しさん2009/03/01(日) 00:32:08
Web用のCだったら、今頃使いまくってるけどな。

PHPは歴史を引きずって関数が増えてるだけ。
末期のBASICを思い出すわ。
DB接続だけで6種類以上あったり、勘弁してくれ。
0343デフォルトの名無しさん2009/03/01(日) 00:34:11
まぁDB周りはクラス作ったりしてまとめたりしてるわ
PostgreSQLとMySQLしかつかってないが。

B→Cときた自分としては、PealやRubyってすごくソースが見づらい。
0344デフォルトの名無しさん2009/03/01(日) 00:36:15
沢山の人が読める
動かせる鯖多い

phpの利点なんて他に無いでしょ
ライブラリなんてpythonだろうがrubyだろうがperlだろうが不自由しませんよ

phpは書きやすくはないと思う。むしろ他より疲れる。
よくも悪くも馬鹿正直な子のイメージ
0345デフォルトの名無しさん2009/03/01(日) 00:45:37
>>344
PHPは書きやすいから沢山の人が読めて、多くの鯖がサポートしてるんだが。
0346デフォルトの名無しさん2009/03/01(日) 00:57:26
PHPとPerlのちがいはなにですか?
PHPの方がゴージャスなのでしょうか。
0347デフォルトの名無しさん2009/03/01(日) 01:04:24
>>345
書きやすくないよ。PHP以外の言語やったことは?
0348デフォルトの名無しさん2009/03/01(日) 01:04:57
Web鯖新調したら動かないって大概Perlで
PHPで書き直すことになって俺の作業がすすまん。。。
0349デフォルトの名無しさん2009/03/01(日) 01:24:37
>>348
普通は逆じゃないか?
サーバ依存のPerlコードなんてどんなのがあるんだろう。
モジュールが入ってないとかそんな問題では。FastCGIとかそういう関係かな。

書き方があんまり古いから、いっそ書き直すってのならわからんでもないが、
PHPの古いコードを書き直すのも大概しんどい作業だから、それは言語のせいではないし。
PHPで書き直す必要のあるシチュエーションがあんまり思い浮かばない。
0350デフォルトの名無しさん2009/03/01(日) 01:41:08
>>349
サーバーの中のことはあまり知らないんだが、今あるWebサーバーを
CentOSに集約する作業で動かないのが出てくる
パーミッションやら権限やらパスやら書き直したんだがやっぱり動かないんだわ

大半はメール、あとはDBやら出力の文字化けたりとかそんなかんじ
バッチの書き直しが俺に来なかったのだけが救い・・・
0351デフォルトの名無しさん2009/03/01(日) 01:57:49
>>350
コード読まずに環境変えて動かんってそれは仕方がない。
Perlのせいではないぞそれ。
むしろPHPの方が、バージョンや設定の違いのせいで書き直しとか動かんとか多い印象。

また、例えば/etc/aliasesいじってメールアカウントを量産するとか、パイプなどで
コマンド直に叩いてるとか、そう言った感じのサーバ依存処理をごにょごにょされまくってたら、
もともとPHPだったとしても多分ひどいことになってるだろ

> サーバーの中のことはあまり知らないんだが
一番の問題はこれじゃないかと。
結局これである程度できてしまうのが、PHPの利点ってことになるんだろうか。
欠点と言うことになるんだろうか。
0352デフォルトの名無しさん2009/03/01(日) 02:37:01
>>351
鯖見てる人がPerl使える人だから上司もそうか、じゃぁ仕方ないで俺に来るんだよね。

メールは、ライブラリ入れてるんだけど動かないっていう状態。 俺はパイプとかさっぱり。
普通にPHPの文法でDBから引っ張ってきてメール送信するように書き直してるだけ。

PHPもDB入れ替えたからSQL全部書き換えなんだが全く手が付けられん状態。。。
0353デフォルトの名無しさん2009/03/01(日) 06:00:02
最近のCentOSではデフォでsendmailとpostfixが両方入ってるしMySQLは3系、4系、4.1系以降で
文字の取り扱いが大きく変わってるからその辺りだろうね。
直すのにそれほどの手間じゃないと思うけどそれを出来ない人に任すような会社であれば
どのみちPHPにしてしまった方がいいかもね。
0354デフォルトの名無しさん2009/03/01(日) 07:07:35
>>341
PHPは誰でも使えるJavaとかC#みたいな感じ。
しかし、仕様の変さでハマりどころの多さVBやVBA並w
0355デフォルトの名無しさん2009/03/01(日) 08:45:27
>>350
馬鹿じゃね
0356デフォルトの名無しさん2009/03/01(日) 09:38:27
全くの素人です
プログラミングを学ぶにはパイソンかルビーのどちらかが良いと聞いて3日ほど調べてるんだけど
ルビーの方がわかりやすい解説を見つけられるんでルビーにします
0357デフォルトの名無しさん2009/03/01(日) 10:04:04
ルビー
0358デフォルトの名無しさん2009/03/01(日) 10:32:40
さあ、ソースコードをコンパイルする作業に戻るんだ。
0359デフォルトの名無しさん2009/03/01(日) 11:02:50
>>356
ルビーに比べたらパイソンの資料が少ないのは否めないな。
レンタルサーバーへのインストールはどっちも少なくてガッカリするが。
0360デフォルトの名無しさん2009/03/01(日) 11:58:25
なんかプログラミングしたいだけならschemeでもやってれば。マジレス
0361デフォルトの名無しさん2009/03/01(日) 12:18:04
パイソンからジャバののちCかルビーからジャバののちCを学ぶルートがよいとありましたので
この二つから選んだ次第です
0362デフォルトの名無しさん2009/03/01(日) 12:34:04
何のルートだw
趣味なら何でもいいんじゃないか。
■ このスレッドは過去ログ倉庫に格納されています