[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 03/06 16:48 / Filesize : 289 KB / Number-of Response : 971
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん mailto:sage [2012/01/12(木) 13:14:17.03 ]
最強のLL=軽量プログラム言語は、どれよ?

エントリーは、Perl、PHP、Python、Ruby、JavaScript・・・
さあ、死ぬまで語りやがれ!!!

■LLとは?
軽量プログラミング言語(Lightweight Language,LL)とは、取り回しに優れ、
コードの作成や修正が容易と見なされるプログラミング言語のことを指す。

ここでいう「軽さ」はプログラマの負担の軽重を指し、
実行速度に優れているという意味ではない。

現在の水準では
・インタプリタ
・動的型
・正規表現
・クロージャ
などを利用できるものがLLと呼ばれることが多い。(Wikipediaより)

前スレ
【Perl,PHP】LLバトルロワイヤル19【Ruby,Python】
toro.2ch.net/test/read.cgi/tech/1320405770/

75 名前:デフォルトの名無しさん mailto:sage [2012/01/20(金) 20:51:40.85 ]
なぜPythonはセミコロンを必要とするのか。
docs.python.org/faq/design.html#why-are-colons-required-for-the-if-while-def-class-statements

読みやすいから。

76 名前:デフォルトの名無しさん mailto:sage [2012/01/20(金) 20:52:46.58 ]
いけね。セミコロンじゃないや。コロン。

77 名前:デフォルトの名無しさん mailto:sage [2012/01/20(金) 20:53:21.43 ]
何周目だよ・・・

78 名前:デフォルトの名無しさん mailto:sage [2012/01/20(金) 21:09:28.20 ]
必要かどうかを考えてるうちはまだまだだわw

プログラム言語は数式と共に文章でもある。
読みやすいかどうかが重要。

読みやすい ≠ 文字数が少ない

どうせタイピング時間なんて写経してるわけじゃあるまいし、
思考時間に比べれば短いものなんだから
数文字程度短くかけたって、仕事が早く終わるわけがない。

短いサンプルが、短くかけた!って喜んでる奴。あれは間抜け。
読みにくくなるのに、無くても良いから無くそう。これも馬鹿


それと空白は文章に必要なもの。
小説では読みやすい文章にするために、意図して空白を入れることがある。

読みやすい ≠ インデント強制

インデント(空白)は強制されるもんじゃない。自分で好きに入れるもんだ。

79 名前:デフォルトの名無しさん mailto:sage [2012/01/20(金) 21:20:07.39 ]
黒魔術からのドヤ顔。
勘弁してくれ。

80 名前:デフォルトの名無しさん mailto:sage [2012/01/20(金) 21:27:09.61 ]
>>74
こんなでこぼこのインデントでもOKなHaskellは
インデントベース構文としては出来損ないだけどな

foo x y =
        if x < x
  then x
    else y

81 名前:デフォルトの名無しさん mailto:sage [2012/01/20(金) 21:49:31.81 ]
しばらくPythonを触ってなくて、久々にコードを書くと

map(lambda x,y: x + y, [(1,2),(3,4),(5,6)])

みたいなコードで

TypeError: <lambda>() takes exactly 2 arguments (1 given) 

ってエラーが出てあれ?ってなる
x, y = 1, 2 は出来るから特に

82 名前:デフォルトの名無しさん mailto:sage [2012/01/20(金) 22:23:04.02 ]
>>75
>読みやすいから。

読みやすさを重視し、なおかつインデントを強制する言語なら、
なおさらコロンは不要だろ
タイプミスも減るし

コロンは単なるゴミでしかない

>>80
Haskell のif構文は、(Pythonと違って)インデントを強制しないからな
then という予約語があるからインデントは必須じゃない

83 名前:デフォルトの名無しさん mailto:sage [2012/01/20(金) 23:10:03.54 ]
Haskellがif構文でブロックの終端(endや } 等)を明示しなくて良いのは、
単純に then節や else節には式一つしか書けないからであって
インデント構文は全然関係ない(式一つだから終端は自明ってわけ)



84 名前:デフォルトの名無しさん mailto:sage [2012/01/20(金) 23:44:12.34 ]
>>82
読みやすいけどなぁ。
行末の開き括弧やコロンは、それ以下に内容が続くことを期待させる。
何もしない'pass'なんかも思想的には同じ感じかな。

意識して書かない限り読み手に伝わらない。
タイプミスするのは書き手が何書くかすら理解してない証拠じゃないの?

そもそも>>82だって読みやすいように律儀に行間開けてくれてるわけで。

85 名前:uy mailto:sage [2012/01/20(金) 23:57:42.41 ]
コロンは邪魔
コロンさえなかったら俺はRubyじゃなくてPython使ってる
はずせるなら外せるようにするべきだけど
実際、外せないんだろ
ちょっと簡単にはパーサ書ける気がしない


外せないゴミのことを「可読性が上がる」なんていう方向に吹っ切れちゃうのはマジでやめたほうがいいよ
末尾のセミコロンを「可読性が上がる」って言ってる超絶バカもいるにはいるけど・・・

本当にその手のおばかは頭痛の種だわ
その手のおばかにどうやって説明したら理解させられるんだか

86 名前:デフォルトの名無しさん [2012/01/21(土) 00:07:01.77 ]
Cでも(したがってC系の言語では)ifの{}は別に必須じゃないよな
構文は
if (式) 文 [ else 文 ]
なので文は一個と決まっている

PerlはC系だけどdangling else避けたいからか
if (式) ブロック [ else ブロック ]
にしたんだよな

87 名前:uy mailto:sage [2012/01/21(土) 00:08:33.21 ]
ifとかを一行で書くならコロンいらなくてもパーサ大丈夫だけど
二行にわたって書く時は

if a == b
 || c == d :

こうするか

if a == b \
 || c == d

こうじゃないとパーサが字句を読み解けないと思う

88 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 00:09:14.45 ]
elifとかelsifって
なんかダサすぎるよな

89 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 00:09:46.95 ]
>>85
いいから句点書けって。

90 名前:uy mailto:sage [2012/01/21(土) 00:15:44.77 ]


91 名前:uy mailto:sage [2012/01/21(土) 00:28:18.95 ]
つまり

if a == b
 print 1
  for i in 0..5
   print i
print :test

こんな言語があればいいなって話だろ

92 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 00:51:20.58 ]
>>84
>タイプミスするのは書き手が何書くかすら理解してない証拠じゃないの?

だってさぁ、世界にあまたあるプログラミング言語の中で、
if文やfor文の行末にコロンが必要なんていう醜悪な構文を採用しているのは、
Pythonだけなんだよ
それでも行末のコロンは読みやすいなんて言えるの?

もしも Python でしかプログラミングしない人なら慣れるだろうけど、
他のプログラミング言語ユーザからすればウザイ、ゴミとしか思えないよ

93 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 00:55:18.00 ]
>>91
まさしく Occam がそれ
Occamは、インデントベース(インデント強制)な手続き型言語
Pythonのような醜いコロンは不要

Occamという名前は、もちろん「オッカムの剃刀」で有名な数学者に由来する
まあ、Pythonとは縁遠い設計思想だね



94 名前:uy mailto:sage [2012/01/21(土) 01:32:58.32 ]
インデントベースな言語はそりゃあるだろうけど、
ようはPytohnやRuby並の機能を持ったまま
>>91これのパーサかくのが死ぬほど厄介なんだろ

「プログラム言語作ってみた」程度の言語はもういい
ニコ動でやれ。と思う

95 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 01:40:02.59 ]
字句解析フェーズでインデントの前後に
ブロックを表すトークンを入れて終わり
だいたいRubyこそ、書きやすさと可読性を最優先するために
パーサが大変なことになっている言語の筆頭だと思うが

96 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 01:45:30.99 ]
>字句解析フェーズでインデントの前後に
>ブロックを表すトークンを入れて終わり

FizzBuzzレベルの話だな
uyさんには死ぬほど厄介みたいだが

97 名前:uy mailto:sage [2012/01/21(土) 01:46:37.76 ]
>>95
それで終わらないから書いてみろって(書けるなら)

98 名前:uy mailto:sage [2012/01/21(土) 01:47:33.41 ]
無知すぎてPythonからコロンを無くすパーサの難易度もわからないか

99 名前:uy mailto:sage [2012/01/21(土) 01:59:55.52 ]
あ、ごめん
Pythonをしらなすぎた

Pythonって複数行にまたがるIF使うときって既に \ 使うように実装されてんだね
ここまで作られてるなら:消すの簡単だわ

100 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 02:28:04.33 ]
>>95
>だいたいRubyこそ、書きやすさと可読性を最優先するために
>パーサが大変なことになっている言語の筆頭だと思うが

まさしくその通りであり、それがRubyだ
Rubyは(インデントベースではないから)if式の直後にthenという終端子が必要
それを「ユーザへの優しさ」を優先し、パーザが複雑になるのを承知で
thenを改行で省略できる構文が採用されている

if式だけではない
あらゆる視点で「ユーザへの優しさ」「直感的なプログラミング」が考慮された
巧妙な構文になっている
苦労するのは中の人だけでいいという思想
だからRubyプログラミングには「自由」があり、プログラミングの楽しさを味わえる
言語であると評価されている

Pythonはその逆だ
インデントベースなのだから(HaskellやOccamのように)行末の醜悪なコロンは不要なハズなのに、
言語設計ミスによりコロンの省略が不可能になった
しかも、それを公式文書では「読みやすさ」などと欺瞞を語る(>>75)
言語設計上のバグの尻拭いをプログラマに押し付けている

行末のコロンだけではない(....以下省略)

101 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 02:44:09.86 ]
>>81
map(lambda (x,y): x + y, [(1,2),(3,4),(5,6)])

102 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 02:45:12.97 ]
while ((y = f(x1,x2,..)) != z)
の代用が
while True:
 y = f(x1, x2, ...)
 if y == z:
  break

for y in iter(lambda: f(x1,x2...), z):
だってのが嫌だな

ifやwhileの条件式をブール値式に限定するだけで
Cでありがちな比較のつもりで代入を使用する罠は避けられるのに……

なんかいろんなところで微妙に不便だったりすることが多いよな

103 名前:uy mailto:sage [2012/01/21(土) 03:14:53.35 ]
>>100
本当にユーザーに優しくするんなら
endも取り外し可能にするべきだろ

あと文章気持ち悪いよお前



104 名前:uy mailto:sage [2012/01/21(土) 03:19:37.50 ]
なんでこういう気持ち悪い文章書くんだろう
死ねばいいのに

105 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 03:23:43.60 ]
代入式の左辺値をそのまま評価したらどんな不都合があるんだろうな。俺は別に構わんけど
schemeのブロックのコメントアウトみたいなのが欲しい。出来ると思うけどな、次にその深さに戻ってくるまでがブロックなんだから

106 名前:uy mailto:sage [2012/01/21(土) 04:00:38.69 ]
お前たちゴミッカスのためにendのいらないRubyお試し版をかいてやったよ?
お前たちゴミカスもソースコードで語ってほしいものだよね

codepad.org/BwqV0jlM

__END__ 以下にソース書けばある程度は動く

とりあえずハリボテなんで if for each class def だけ対応
そんでendはつけてもつけなくても良いようにはした
俺個人としてはRubyがいつかこうなってほしい

class A
  def func
    for i in 1..9
      for n in 1..9
        printf "%02d " % ( i * n )
      puts


end

A.new.func


107 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 04:04:55.03 ]
ruby房は狂っとる

108 名前:uy mailto:sage [2012/01/21(土) 06:11:10.99 ]
codepad.org/2sth8vhu

とりあえずendなしrubyをここまでは作った

簡単とか言ってる奴は続きを作れカス

寝る

109 名前:デフォルトの名無しさん [2012/01/21(土) 11:04:32.90 ]
XMLリテラルが言語ってどんなのがある?


110 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 11:09:22.37 ]
最強言語Scala

111 名前:uy mailto:sage [2012/01/21(土) 13:02:47.28 ]
で、結局だれもソースかかないのか
いつもこうやって俺だけがソースをアップし後続が続かない
「「「「「「「議論のためにソースを提示」」」」」」」
程、有効な手段は無いのにバカじゃないの
かかないんじゃなく「かけない」んだろうけどな


一生そうやって口で大口叩くだけの存在で生きてろよカス共

112 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 13:23:48.76 ]
【プログラミング部】 PHPが100倍速で動くようになったぞー
awabi.2ch.net/test/read.cgi/poverty/1327050821/

113 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 15:18:19.20 ]
Pythonで行末コロンをオプションにしてみた
もちろんやっつけ

ideone.com/r6xsP



114 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 15:34:43.45 ]
キーワード足したり、ちょっと修正
ideone.com/1uS6U

115 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 15:39:00.26 ]
          _____
  .ni 7    /        \  ご冥福をお祈りします
l^l | | l ,/) / /・\  /・\ \    .n
', U ! レ' / |    ̄ ̄    ̄ ̄  |  l^l.| | /)
/    〈  |    (_人_)    |  | U レ'//)
     ヽっ     \   |    /   ノ    /
 /´ ̄ ̄ ノ     \_|    \rニ    |
                      `ヽ   l

116 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 16:06:07.49 ]
経緯はよく知らないが
Rubyは実験的に、thenの代わりにコロンが使えるようになってたことがある
他にもfor while untilのdoの代わりにもコロンが使えた
制御構文の条件部の終わりにコロンが使えたのだろう
が、1.9で廃止された
たぶん今の1.8.7ならまだ使えると思う
ruby 1.8.7 (2011-06-30 patchlevel 352) [i386-mingw32]では使えた

いつもthenやdoは省略してしまうので書かないし
短く一行で書くにしてもセミコロンでいいし
いったいなんだったんだろう

ドキュメントにもかかれてないので、あまり知られてないだろうけど


117 名前:uy mailto:sage [2012/01/21(土) 16:19:30.00 ]
>>114


>>116
case 2
 when 2:
  p 9
end
switch文からきてんじゃねーの

気まぐれだろ thenよりマシだと思うから復活してほしいんだけど

118 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 17:41:52.79 ]
>>117
>「「「「「「「議論のためにソースを提示」」」」」」」
>程、有効な手段は無いのにバカじゃないの
>かかないんじゃなく「かけない」んだろうけどな

と書き込んだ本人が、他人のソースに「乙」の一言じゃ
ソースをアップする方も報われねーな

119 名前:uy mailto:sage [2012/01/21(土) 18:14:41.97 ]
>>118
ソースをアップするほうって。むくわれねーって。
この程度の「一瞬で作れるレベル」のソースに感想とか。

>>96いわくFizzBuzzと同程度らしいじゃん
一々fizzbuzzに感想なんていらないだろ
この程度のソース作成に手間取るような奴は会話に参加しなくていいと思うよ

120 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 18:30:42.16 ]
やっぱendは見苦しいというかダサイな。

121 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 21:11:41.39 ]
だよな、行末のコロンもダサイしな。

122 名前:uy mailto:sage [2012/01/21(土) 22:45:35.03 ]
一生変数に$のついた言語と末尾に;のつく言語でプログラミングしいていてくださいね

123 名前:デフォルトの名無しさん mailto:sage [2012/01/21(土) 22:46:51.90 ]
プログラミングしいていていくよ



124 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 01:34:46.37 ]
>>119
二つの問題を混同してるでしょ
インデントをブロックを表すトークンに変換して
トークン列に挿入したとしても、パーサの複雑さはまったく変化していない
インデントベースだからといって困難が極端に増すわけではないというだけ

もっとも、Rubyみたいにやたら複雑なスキャナを構築していると
スキャナ自体をいじるのもそう簡単ではないだろうけど

125 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 01:40:40.91 ]
所で、インデントの効果はありましたか?

126 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 02:05:09.67 ]
インデントの効果? あるわけないだろ。
あれはインデントすらできてない奴らを矯正するためのもので、
普通にインデントがちゃんとできてるなら、
それと全く変わらない。

127 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 05:13:18.50 ]
あれ?Rubyも$とか@とか@@とか変数の前に付いてたと思うけど?

128 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 05:50:52.89 ]
ださいよね


129 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 10:09:06.75 ]
>>127
わざと。スコープが一目瞭然っていう利点はあるが、
グローバル変数を多用するとコードが汚くなるようにして
スコープをできるだけ狭めるようにプログラマを誘導してる

130 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 10:49:34.81 ]
BASIC・Perl路線の単に型を示すためのシジルなら
システムハンガリアン同様の時代遅れで死滅していい気がするんだが
Lisp路線の
*special_variable*
predicate?
destructive!
みたいなのはむしろわかりやすいと思う



131 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 11:25:24.15 ]
>129
ならグローバル変数そのものをなくせいばいいじゃん

132 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 11:33:03.22 ]
>>131
Rubyでそれやると他に色んなトコが崩れないか

133 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 11:36:56.65 ]
Rubyの本質は全部global



134 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 11:48:09.35 ]
>>131
もしかしてグローバル変数の存在意義について議論したいの?

135 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 12:14:30.68 ]
Rubyは根本的な設計がまずいって話をしたいのです。

136 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 12:28:57.45 ]
>>135
添削

誤: Rubyは根本的な設計がまずいって話をしたいのです。
正: Rubyは根本的な設計がまずくなければならないって話をしたいのです。


137 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 13:06:57.89 ]
>>129
だったら、Perlは$@%で型を明示出来て分かりやすいよね?

138 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 14:09:32.28 ]
てか LL にオブジェクト指向とかいらねーだろ
object.method(args) なシンタックスって邪魔なだけじゃね?

おまいら list.each(function) なコードが分かりやすいと本気で思ってるの?
どう考えたって each(function, list) が自然だろ

list オブジェクトに each メッセージを送るとか
list オブジェクトが each メソッドを持ってるとか
どんな解釈だよ。アホ過ぎ。
オブ指信者が発狂してるとしか思えねーよマジで。


139 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 14:16:03.35 ]
モダンな汎用高級言語では多様なオブジェクトや代数データ型みたいなものが
扱われるわけで、変数のデータ型を記号や名前規約で明示させようなんて
無駄で役立たずな試みでしかないのが馬鹿でもわかる

グローバル変数はどうせ言語の上でのコンベンションがなかったとしても
ユーザがg_とかそんな名前のものをつけるだろ

140 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 14:22:06.07 ]
>>139
perl 知ってる?

141 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 14:29:27.53 ]
もちろん知ってるよ
ハッシュと配列「だけ」区別できたらなぜ嬉しいかさっぱり分からんがな

142 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 14:48:00.14 ]
>>129
本当にそれだけの意図で記号を入れてるならMatzただの馬鹿だな

143 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 14:51:15.86 ]
>>142
RubyってPythonと同じ変数宣言なしの関数スコープな言語なんじゃなかったっけ
なら$があることでglobal文とかいうキモい代物が要らないという利得があるんじゃね



144 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 14:52:00.40 ]
インスタンス変数の @ とかクラス変数の @@ とかはどういう利得があるのか

145 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 14:52:38.05 ]
selfとかいうキモい代物が要らないという利得があるんじゃね

146 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 14:53:27.74 ]
@もキモいだろw

147 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 14:56:15.25 ]
そうだけどたぶん関数スコープで変数宣言が無い言語ではローカル変数かどうかを
区別する手段は必要なんだよ
だからPythonにはself, nonlocal, globalのようなものがある
やっぱりletとかあったほうがいいんじゃね?という話なら特に反対はしない

148 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 15:00:39.77 ]
と同様に、Perlではコンテキストを区別する手段が必要だよね。
コンテキストとか難しいから無くていいんじゃね?という話なら特に反対はしない

149 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 15:06:35.20 ]
>>143
外のスコープの変数を読むだけならglobalいらない
そもそも外の変数の束縛を書き換えようなんて邪悪なこと
滅多にしないからglobalなんて殆ど使わない

え?Rubyは参照するだけでも$がいるの?キモイね

150 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 15:12:35.18 ]
Lispのスペシャル変数も*で囲むから、グローバル変数の$は別にキモくないけどなあ
外の変数の束縛を書き換えるってのはLispの系統ならよくやるし
(レキシカルクロージャでオブジェクト風のことをやる際の常套手段)

151 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 15:15:16.71 ]
Lispは全体的にキモいから

152 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 15:16:56.95 ]
さらに邪悪でもある > Lisp

153 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 15:21:23.17 ]
間隔が麻痺してる人の意見は当てにならんな



154 名前:デフォルトの名無しさん [2012/01/22(日) 15:24:19.81 ]
awabi.2ch.net/test/read.cgi/poverty/1327050821/3


155 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 15:32:30.90 ]
最近思うのは、オプションとして行末記号が付けられないと、Twitterで不便
みんなどうしてんだろ

156 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 15:45:19.20 ]
lisp は括弧さえ気にならなくなれば後は気にすることないのに。
式と文の違いもないし。

common lisp の loop と format はさらに変態的だけど。

157 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 16:49:59.65 ]
carとかcdddrとか括弧以外もきもいって

158 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 16:56:19.53 ]
cdrない

159 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 17:01:40.20 ]
格好がなくなれば
きもくないって思っているのは
Lisperだけ

160 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 17:05:50.66 ]
>>149
参照するだけって言うが、そんなに頻繁に参照しないだろ

161 名前:uy mailto:sage [2012/01/22(日) 17:14:57.84 ]
つうか
ローカル変数と
グローバル変数と
メンバ変数と
クラス変数を

区別する為に% @ @@ ってわざと記号つけているわけで
区別する手段の無い言語のほうが可読性が下がっているじゃん
んで、可読性を下げない為にメンバ変数は

m_hogehoge とか 変数名に m_ つけたりしてるんだろ?wwwww

@とどっちがいいよ


そもそもRubyで大規模なプログラムは滅多に書かない(書く奴はそれほどいない)
ので
JAVA,C#と同じようなクラス設計でプログラムかかなくたっていいんだよ
evalやyieldやlambda使わないなら、Rubyの意味が無いから、C#でもつかっててくださいって感じだけど

162 名前:uy mailto:sage [2012/01/22(日) 17:16:12.43 ]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% → $

163 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 17:18:57.70 ]
別にm_とかつけんでも文脈でわかるよ



164 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 17:20:58.38 ]
>そもそもRubyで大規模なプログラムは滅多に書かない

だからグローバル変数使いまくりでも別に構わなくて
いちいち $ なんか付けたくないなー

165 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 17:23:00.11 ]
>ローカル変数と
>グローバル変数と
>メンバ変数と
>クラス変数を

エディタのシンタックスハイライトで区別できる


166 名前:uy mailto:sage [2012/01/22(日) 17:23:21.62 ]
あとRubyは>>129
こういう考えもあって
static変数すらない

この辺りを解決できないPGには大変だろうが

その代わりにカスがカスなソースコードをかかなくなるので
最低限の品質は守られる
ただstatic変数は、アルゴリズムにおいて必要な概念だと俺は思っているけどな

Pythonがインデントで束縛するのと似たような事を言語仕様でやっている言語ではある
結局、Matzがどういう考えでrubyの言語仕様を決めているかが、ある程度理解できる程度のレベルにならないと
rubyにある「なんでこうなってんの????」は理解できないと思う

167 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 17:25:17.35 ]
Rubyは楽しさがウリの言語らしいけど
Pythonの方が楽しいわ

168 名前:uy mailto:sage [2012/01/22(日) 17:25:27.37 ]
>>164
Rubyでグローバル変数使いまくりなソースコードって?
そもそも、普通はオート変数しか使わないぞ

>>165
動的言語でそれは出来ない
中途半端に出来るそれを「出来る」とはいっちゃいけない

169 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 17:25:37.89 ]
> static変数

…その言葉って、言語によって随分意味が変わるんだが
どの言語のstatic変数のことだ

170 名前:uy mailto:sage [2012/01/22(日) 17:26:01.64 ]
>>163
だろうけど、つける奴はつけるぞ
rubyでつけてる奴も見たことある

171 名前:uy mailto:sage [2012/01/22(日) 17:26:21.92 ]
>>169
Cの考えでいい

172 名前:デフォルトの名無しさん [2012/01/22(日) 17:33:34.36 ]
さすがにきもさでいったら、Perl、PHP、Pythonは郡を抜いてるから、
相対的にRubyはきもくないだろ。


173 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 17:35:00.07 ]
Ruby厨がPerlとは違う!とか言ってて笑える



174 名前:デフォルトの名無しさん mailto:sage [2012/01/22(日) 17:36:28.68 ]
>>172
群を抜いてるのはお前の頭の悪さじゃ

175 名前:uy mailto:sage [2012/01/22(日) 17:37:12.91 ]
言語仕様のカスさ → PHP
キモさ → Python
読みにくさ → Perl
神さ → Ruby

>>173
俺じつはPerl6に期待してたよ
それと同時に、もしかしたらRubyにおいついてくるんじゃないかっていう少しも不安もあった
でもperl6をみて安心した^^;;;;;
perlは終わったコンテンツです






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<289KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef