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


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

Pythonに見られるインデントによる制御構造の是非



1 名前:デフォルトの名無しさん mailto:sage [2007/01/22(月) 22:44:02 ]
議論よろしく。

562 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:22:19 ]
>>561
その程度ならtry:finally:があれば十分じゃん…

563 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:25:54 ]
>>562
try:finallyで仕込むのメンドイでしょ。gotoと大して変わらないし。
アスペクト指向が一番楽だけど。

564 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:30:13 ]
>>563
try:finally:がgotoと変わらないって…
gotoでは関数内で例外が発生した時の振舞いがまるで違うんだけど…

565 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:34:17 ]
>>564
いや議論がごっちゃになってるのだけど。ロギングに例外機構を
使用しようとするところもおかしいし、例外の振る舞いとgoto
をごっちゃにするのもおかしい。

566 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:37:56 ]
>>565
> ロギングに例外機構を
> 使用しようとするところもおかしいし、

全然おかしくない。
try:finally:はtry:句から抜ける時を捕まえるという、
まさにトレースにぴったりの機構だろ。

> 例外の振る舞いとgoto
> をごっちゃにするのもおかしい。

例外が発生した時にOUTの記録を残せないトレースなんて
役に立たないと思う。

567 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:39:39 ]
元の議論は、gotoが必要な時があるかどうか。
>>558が提示したケースもgoto無しで十分対応できることが示された以上、
もうその時点で議論の結着はついていると思われ。

568 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:40:28 ]
coreutilsとかLinuxのカーネルとか見ると、gotoって便利だなと思わないか?


569 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:46:29 ]
>>566
try finallyは例外を捕まえるための機構であって、ファンクション
トレースのための機構ではない。

デストラクタでロギングするほうがよっぽどスマート。try finally
に依存したロギングよりも。そしてアスペクト指向のほうが
デストラクタロギングよりももっとスマートだといっているのだよ。

570 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:46:44 ]
>>568
CとPythonでは言語の抽象度がまるで違うんだから、
coreutilsだのLinux kernelだのは参考にならない。

Cでtry:finally:と同等な機構を仕込むのがどれだけ大変かわかるか?



571 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:48:29 ]
>>569
> try finallyは例外を捕まえるための機構であって、

いいえ、全然違います。ひょっとしてtry:except:と勘違いしている?

> デストラクタでロギングするほうがよっぽどスマート。

デストラクタはオブジェクトの解放をする機構であって、
ロギングのための機構ではない。


572 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:50:24 ]
言語に備わっているものは自由に使えばいいじゃん。
(俺)ルールが決まっていれば混乱することもない。

573 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:52:32 ]
558はせっかくPythonが提供している仕組みを無視して
Cの原始的なやり方を押し通そうとしているように見える。

574 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:56:40 ]
いや、もともとCの話だったのだけど・・・。まぁPythonのようなクソ言語使ってないけど。

575 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 16:59:35 ]
ならpythonスレに来なきゃいいのにw

576 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 17:05:22 ]
寂しかったんだろ。
こういう態度じゃ,友達もいないだろう。

577 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 17:07:46 ]
このスレはオフサイドルールについて議論するためのスレであって
たまたま1がPythonしか知らなかったのだと思うわけだが。

しかしオフサイドルールの話題ですらないな。

578 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 17:20:17 ]
>>570
>556 名前:デフォルトの名無しさん [sage]: 2008/02/09(土) 13:55:24
>まぁさ、例外あるような言語ではgotoいらないかもしれないけど、
>Cとかだと普通に使うよ?
>557 名前:デフォルトの名無しさん [sage]: 2008/02/09(土) 14:28:31
>いや,普通には使わないわ(ww

ここから始まった話題なので、
今に限ってはCのgotoの話をしている。pythonは今のトピックにおいて関係なし。
Cは例外ないから>>558がgotoなしで書けるという話も決着がついてない。
ここで例外使えばいいという指摘自体が的外れ。
まあ実際gotoは無くてもいいが、あると遥かリソース開放とかは便利。
むろんGCとか例外とかがあればそっちのが便利だが。


579 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 17:43:45 ]
どこか適切なスレを教えてやってくれ誰か

580 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 17:46:28 ]
>>578
とりあえず
pc11.2ch.net/test/read.cgi/tech/1123726695/
にいけ。



581 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 17:54:22 ]
書いておいた
pc11.2ch.net/test/read.cgi/tech/1123726695/199

582 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:10:21 ]
まあ結論としてはPythonにもgotoがあってもいいねと。
使いたくなければ使わなければいいんだし

583 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:14:03 ]
gotoイラネ

584 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:14:17 ]
だからPythonのスレじゃねーし

585 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:35:54 ]
selfもなくして欲しい。

586 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 10:08:19 ]
いまPLSQLの仕事をしているんだけど、
インデントして見やすいように書くと、
文の終わりが深いインデントで唐突に終わってるんだよね。
Pythonってこんな感じのコードになるのかなーと思った、
Pythonを知らないやつのたわごとでした。


587 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 10:09:56 ]
>>586
つ[null;]

588 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 11:30:22 ]
インデントをスペース1に変更しる

589 名前:デフォルトの名無しさん [2008/02/23(土) 00:53:36 ]
インデントとブレース両方入れるのってそんなにマイナス面が多いことなんだろうか?
ジードのブレース拒否の態度とMatz のインデント拒否の態度は両方とも
合理的な根拠が感じられない。

590 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 01:08:11 ]
> ジードのブレース拒否の態度

ソースきぼんぬ



591 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 01:48:41 ]
以下のような特殊なエラーがわざわざ入っている。

>>> from __future__ import braces
File "<stdin>", line 1
SyntaxError: not a chance


python3000の議論が始まったときに、ブレースが入らないことだけは
最初っから完全に決まっていた。そもそもまともに議論・検討しようという態度がない。


PEP3099で、ブレースが入らない理由のところで
何も書かれておらず、「そんなことは明らかだ」
という言い方しかしていない。(議論する気がない

592 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 02:52:25 ]
ブロックの記述にインデントを用いることがPythonのレーゾンデートルの一つなんじゃね?
いいとか悪いとかじゃない、それを変えてしまったらもはやPythonではない、と。

ぶっちゃけ俺もそう思う。

593 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 04:12:48 ]
ブレースの利点(といわれるもの)は視認性と自動整形だけかね?

594 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 05:07:02 ]
今さらブレース入れろと言われても面倒だし
どっちでもいいという仕様になるのも生理的に嫌

595 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 06:12:09 ]
ブレースで視認性が上がるとは到底思えないのだが

596 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 12:01:58 ]
>595
んだんだ

597 名前:デフォルトの名無しさん [2008/02/23(土) 12:31:10 ]
>>595
パーサー実装するのが面倒。
ブレースつけてもどうせみんなインデントするからいいじゃん。

598 名前:デフォルトの名無しさん [2008/02/23(土) 12:48:04 ]
ttp://www.rubyist.net/~matz/20080220.html
最後に、「Haskellみたいなブレースの使い方を採用する気ない?」と尋ねたら、
「いろんな文法の変更を試している人がいるから、その中のひとつとして考えてみる」
ということであった。これが実現したら大喜びする人も多いように思うけど
(lambdaで複文が使えるようになるし)、それほど乗り気であるようにも見えなかったので
過大な期待は禁物である。

599 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 12:51:47 ]
>>598
> 「いろんな文法の変更を試している人がいるから、その中のひとつとして考えてみる」という ことであった。

日本語訳:
ウザい東洋人、あっちいけヨ。

600 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 12:57:53 ]
lambdaで複文使えるようになってうれしがるやつなんて変態だけだろ。
いくつもの分がブレスに所狭しと押し込められたソースなんて汚いだけだよ。
複数の文を書くような場面では、関数定義してオブジェクトにして引き回せばいい。



601 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 13:24:21 ]
Matzはなんで、Guidoが「lambdaで複文が使えるように」していないのはわざと
だという事に気づかないんだろうか
Matzは「大喜びする人も多い」ならRubyをそういう風に改造するんだろうけど
Guidoは最初から制約を利用しようとして言語デザインしてるんだから
自分とは考えが違うと理解しないかな

602 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 13:27:36 ]
>>598
> 「いろんな文法の変更を試している人がいるから、その中のひとつとして考えてみる」という ことであった。

日本語訳:
愚問に答えるのは苦労するぜ

603 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 13:29:56 ]
>終始フレンドリーであったことを報告しておきたい。並んで写真も撮ったしね。

Guidoはおとな


604 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 13:35:24 ]
>>598
> 「いろんな文法の変更を試している人がいるから、その中のひとつとして考えてみる」という ことであった。

日本語訳:
その質問、あなたで百万回目ですから。

605 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 14:01:24 ]
GuidoとRubyの間には、同じ言語の創始者としての共感のようなものがあるんだろうな。
俺たちみたいに、匿名掲示板で溜飲を下げている一般ピープルには想像もつかないのだけれど。

606 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 14:04:56 ]
matzから見たGuidoとの関係: 同じ言語の創始者としての共感がある
Guidoから見たmatzとの関係: この手のイベントで握手を求めてくる百万人の1人

607 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 14:05:54 ]
>>605
GuidoとMatzの間違いじゃね?

608 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 14:17:29 ]
>>606
禿

609 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 14:53:20 ]
Guido が松本のせいで日本人を嫌いになりませんように…

610 名前:デフォルトの名無しさん [2008/02/23(土) 18:21:18 ]
>Guidoから見たmatzとの関係: この手のイベントで握手を求めてくる百万人の1人
ジード、自分からRuby1.9について質問しまくってたようだから、そういうわけでもないでしょ

にしても、Matz - Guidoの間でこのスレとおんなじ話題が上ってたって言うのは面白いw



611 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 18:22:13 ]
グ・・・Guido

612 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 18:22:14 ]
>>610
君にいい言葉を教えてあげよう。
「社交辞令」

613 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 18:24:31 ]
>>609
guidoってオランダ人だろ?
なら元から(ry

614 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 18:26:04 ]
ttp://www.youtube.com/watch?v=oEkJvvGEtB4

これ?

615 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 18:29:05 ]
>>612
ヨーロッパ人はそういう社交辞令的な質問が得意だよね。

616 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 18:35:15 ]
>>> from __future__ import braces
File "<stdin>", line 1
SyntaxError: not a chance

617 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 19:37:48 ]
Matz「こんな機能どう!凄いよ!」
Guido「そういうのを試してる人もいるよ」(それは10年前に通り過ぎた場所だよ)

618 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 07:55:37 ]
Rubyの人って独善的でいや。


619 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 08:12:31 ]
リーダーに独善的でないやつなんていない

620 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 08:16:16 ]
独善的であることを自覚している人と、
無自覚なまま他者を攻撃し続ける人がいるよね。



621 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 09:13:09 ]
いいかげんスレ違い

622 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 11:35:10 ]
>>620 は無自覚なまま他者を攻撃し続ける人

623 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 13:37:33 ]
>>622はスレ違いに無自覚なまま他者を攻撃し続ける人

624 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 14:34:06 ]
寛容な終身独裁者だったっけ

625 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 22:45:42 ]
まあ lambda で複文云々はさておくとしても
「なんでも機能をとりいれる」ではなく
「ほどよいバランスで適切な要素だけを適切に配置」
っていうのが一番重要なんだよね…

perl のワケワカメで不要な暗黙機能満載を体験すれば
誰でも気づきそうなものだが

626 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 00:03:42 ]
その辺に関しては Python の開発陣は大丈夫そうだな

627 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 06:25:46 ]
まあ lambda で複文云々を言うのならProcの仕様なんとかしろと…

628 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 07:46:15 ]
スレ違い止めれ

629 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 15:13:44 ]
RubyはごちゃごちゃしててPerlとあんまり変わらん

630 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 21:00:53 ]
そのうちPerlでRubyのコードが動きそうだしな



631 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 22:27:00 ]
Perl よりは Ruby の方が俺はずっと読みやすいけどな…
どうも Perl とっつきにくい。

632 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 14:00:29 ]
Perlよりマシかもしれないがそんなに大差ない
二者で比較するのでなく他の多くの言語を考慮すれば
Rubyも読みにくい方に分類される

633 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 14:07:43 ]
ここは off-side rule について議論するスレですよ?
ttp://foldoc.org/?off-side+rule

634 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 15:51:13 ]
> Rubyも読みにくい方に分類される
釣りにもなってない

635 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 20:14:44 ]
事実を書いているんだ
ミクとは違うのだよミクとは

636 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 20:53:03 ]
オレもRubyは読みにくいと思う。
スクリプトの中ではPHPが一番読みやすい。

637 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 22:24:48 ]
それだとなでしこ最高?

638 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 21:45:57 ]
ECMAScript 4 が最強

639 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 21:56:25 ]
>>638
でもまともに使える実行環境が無いよね

640 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 22:01:01 ]
ActiveECMAScriptやIronECMAScriptなんてのを期待



641 名前:デフォルトの名無しさん mailto:sage [2008/02/29(金) 01:05:46 ]
ECMAScript って、generatorの中に、文字列書いてたり、
var がいるのかいらないのかわからんかったり、()の省略ができるときと
できない時が混ざってて気持ち悪かったり、足し算で意味わからないcoerceがおこったり
するウンコ的な言語のこと?

642 名前:デフォルトの名無しさん mailto:sage [2008/02/29(金) 04:48:08 ]
>>636
               .|   |  | |   |    |  | |   |   |   || | |
               .|   |  | レ  |    |  | |   |  J   || | |
    ∩___∩    |   |  |     J    |  | |  し     || | |
    | ノ\   ,_ ヽ  .|   レ |      |  レ|       || J |
   /  ●゛  ● |   .J      し         |     |       ||   J
   | ∪  ( _●_) ミ             .|    し         J|
  彡、   |∪|   |              .J                レ
 /     ∩ノ ⊃  ヽ
 (  \ / _ノ |  |
  \  "  /  | |
   \ / ̄ ̄ ̄ /
      ̄ ̄ ̄ ̄

643 名前:デフォルトの名無しさん mailto:sage [2008/02/29(金) 10:03:58 ]
ここは off-side rule について議論するスレですよ?
ttp://foldoc.org/?off-side+rule

ECMAScriptはLLスレか?

644 名前:デフォルトの名無しさん [2008/03/24(月) 09:51:15 ]
def hoge(a):
  a.sort(lambda x,y: x - y)
return a
このhoge自体をlambdaで定義しようとして
hage = lambda a: a.sort(lambda x,y: x - y)
としてもsort後のaの値は返せないんですよね
hage = lambda a: a.sort(lambda x,y: x - y), return a
みたいに複文にすると怒られるし・・・


645 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 10:03:41 ]
誤爆?

646 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 11:43:53 ]
>>644
sortとsortedの違いは判る?

647 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 12:49:23 ]
>>646
解決しました。
ありがとうございました。
hage = lambda a: sorted(a, lambda x,y: x - y)

648 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 14:04:06 ]
>>644
入門書嫁。

649 名前:デフォルトの名無しさん [2008/03/30(日) 12:23:46 ]
age

650 名前:デフォルトの名無しさん [2008/05/22(木) 04:00:43 ]
水干



651 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 17:35:04 ]
for i in xrange(3):
  p i
for i in xrange(4):
 p i
それぞれスペースの数が違ってても大丈夫なんですか?



652 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 17:39:04 ]
p "それぞれブロックが閉じているので大丈夫です"


653 名前:デフォルトの名無しさん [2008/12/31(水) 11:59:02 ]
age

654 名前:デフォルトの名無しさん mailto:sage [2009/01/01(木) 00:16:13 ]
sage






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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