【Perl,PHP】LLバトルロワイヤル20【Ruby,Python】at TECH
【Perl,PHP】LLバトルロワイヤル20【Ruby,Python】 - 暇つぶし2ch950:デフォルトの名無しさん
12/02/19 11:58:53.21
まあ、そもそものRubyの構文がわるいんだろうな。
行き当たりばったりで作ったから、
新しい機能を入れる余地がない。

あー、また互換性切り捨てか。

951:デフォルトの名無しさん
12/02/19 12:02:22.50
>>949
>>948を嫁

952:デフォルトの名無しさん
12/02/19 12:03:36.94
>>950
>行き当たりばったりで作ったから、

そのとおり、Pythonの関数型プログラミング機能と同様に、
行き当たりばったりだね

953:デフォルトの名無しさん
12/02/19 12:08:54.56
>>950
> 行き当たりばったり
> 互換性切り捨て

新旧スタイルクラスに3.0と、Pythonも大概だと思うが…

954:デフォルトの名無しさん
12/02/19 12:33:10.84
950は、よりよい言語にするためだったら互換性は切り捨ててもいいという、
最近のLL系言語に蔓延している風潮それ自体を批判しているんだよ

冒頭のRubyは飾りです、デコレータだけに

955:デフォルトの名無しさん
12/02/19 12:34:34.04
>>928
>URLリンク(twitter.com)
>> 社内でPythonをメインで使っていくぞーって吠えてphpをdisったりしてるの、
>> 単にガキが暴れてるだけに見えるかもしれませんが、もともと僕自身が
>> 引っ込み思案なので自分を追い詰めるために虚勢を張っているのです。
>> 察してください。

さんざん他の悪口を言っておいて、謝りもせず、なにが「察してください」だよ。
自分を追いつめるためなら何を言ってもいいと思ってんのか?
Python信者クズだな。


956:デフォルトの名無しさん
12/02/19 12:35:22.33
pythonのデコレータ自体は高階関数だけど、
@なにがし、はデコレータで関数を置き換える別の機能だと思うけど、、、


957:デフォルトの名無しさん
12/02/19 12:42:37.21
>>955
このスレのPython信者と一緒だね

958:デフォルトの名無しさん
12/02/19 12:46:02.17
>>954
最後のオチ、ワロスw

959:デフォルトの名無しさん
12/02/19 12:47:35.87
>>956
シンタックスシュガーだね

960:デフォルトの名無しさん
12/02/19 13:16:12.46
デコレーションケーキ

961:デフォルトの名無しさん
12/02/19 14:07:40.29
構文論と意味論がごっちゃになるバカとか、このスレにふさわしい隔離対象じゃあないか

962:デフォルトの名無しさん
12/02/19 14:08:29.48
LL ではない重量級の言語は何メインで使ってる?
LL だけって人もいるかもしれないけど、大抵は重量級と LL の両方使うでしょ。
組み合わせに傾向が出たりしないかな?

自分は C と Python です。

963:デフォルトの名無しさん
12/02/19 14:21:02.32
>>961
暴れているガキのことか?
うーん、いくらここが隔離スレだとしても勘弁して欲しい
ガキのお守りは疲れるから

964:デフォルトの名無しさん
12/02/19 14:24:47.80
>>962
漏れは C と Ruby
ただしどちらの言語ともプラットフォームは UNIX(Mac or Linux) だけど

965:デフォルトの名無しさん
12/02/19 16:10:41.76
「LL ではない重量級の言語」ってのがよくわからんけど、
Rubyや、Perlっぽい言語以外、という分類なら、CとかHaskellとか。

Haskellは慣れからくる惰性で使ってるだけだから、OCamlないし
遅延評価が必要ならもっと別の何かでも構わないと思う。

966:デフォルトの名無しさん
12/02/19 18:11:06.40
>>948
仮に@なにがしの構文糖が使えないとしても、>>825のコードは殆ど冗長にならない

def f(x:int, y:int) -> int:
  return x + y
f = typecheck(f)

def g(x):
  print(x)
g = validate(x=lambda x: -1 < x < 1)(g)

高階関数と相性の良いRubyなら>>914はもっと簡潔に書けるでしょ
ASSERT.kind_of を毎回書くんじゃなくて別のメソッドに隠蔽すべき

967:デフォルトの名無しさん
12/02/19 20:45:16.47
Rubyのメソッドは一級市民じゃないので高階関数とは相性悪いです
デコレータをRubyでやるなら動的なメソッドの再定義になりますね

元のメソッドを別名にしてそれをラッピングしたメソッドを同名で再定義します
def foo(x,y) x+y end
type_assersion(:foo, Integer, Integer)
見たいなのは実現可能です

順序を逆にして
直後に定義されるメソッドに対するデコレータみたいなのも書けなくはありません
type_assersion(Integer, Integer)
def foo(x,y) x+y end

ググって見つけたところだと
type_assersion(Integer, Integer) do
def foo(x,y) x+y end
def bar(x,y) x-y end
def baz(x,y) x*y end
end
って感じのがありました、これはRubyっぽい気がします

わざわざ型をチェックしたりする必要性はよくわかりませんね
そんなのは仕様とテストに書いてあれば十分な気がするので


968:デフォルトの名無しさん
12/02/19 21:28:50.10
>>964
unix環境でcを使うなら当然ながらgdbは必須なので、
gdbの拡張用スクリプトに公式的に選ばれたpythonつかっといた方が
幸せになれるんじゃなイカ?

個人的な考えでは、gdbの拡張用スクリプトは、luaかguileにすべきだった。
インデントが構文の言語は、対話環境でイジるの面倒杉だし、OOPとしてのpythonは失敗策。
あれなら、まだperlを採用した方がマシ

s-expなんてemacsがあってはじめて幸せになれるようなもんで、
インタラクティブな操作に向くとは到底ながら思えないけれど、
デバッガにはgnu公式のスクリプトを採用した方が組織としての一貫性があった。
ソフトウェアに永遠の命をなどとスローガンを掲げているわりに連中は自らその道を外れた。

ここのところ話題に挙がらない後発のgroovyって流行ってんのかな?
mozillaのrustといい、perlのようなものから
rubyのようなものを生み出した功績は素晴らしいと思う

969:デフォルトの名無しさん
12/02/19 21:44:06.10
>>968
元UNIX系だがgdbなんてほとんど使ったことのないオレが通りますよ。
(カーネル空間なんでgdbはパニックダンプ解析でしか使えないし・・・。)

関わって多言語は、
C(コーディング)、Sparcアセンブラ(デバック時)、Forth(レビュー対象)。
今はPerl、PHP、Javascript、Java、ActionScript、VBA、SQL、色々やってますが、PythonとRubyは未経験でつ。

970:デフォルトの名無しさん
12/02/20 00:04:01.82
Klabっていつの間にかソーシャルゲーム屋になってたんだな。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch